移动端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

list4.vue 270 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580
  1. <template>
  2. <div class="app-container">
  3. <van-sticky>
  4. <div class="bannerBg" style="">
  5. <van-nav-bar
  6. style="background:transparent;border-bottom-width:0;"
  7. @click-left="onClickLeft"
  8. @click-right="showUploadList"
  9. >
  10. <template #left>
  11. <van-icon name="arrow-left" size=".5rem" color="#fff" />
  12. </template>
  13. <template #right>
  14. <van-icon v-if="$cookies.get('upload')!=null&&$cookies.get('upload')==1" name="photo-o" size=".5rem" color="#fff"/>
  15. </template>
  16. </van-nav-bar>
  17. <van-popup v-model:show="showImageList" position="bottom" style="height:40vh;padding:50px 10px 0" closeable
  18. close-icon="close">
  19. <p style="color:#000;position:absolute;top:0.426667rem;left:0.426667rem">图片上传</p>
  20. <div style="width:100%;height:calc( 40vh - 100px);overflow-y: scroll;">
  21. <van-uploader v-model="uploadImgList" :after-read="beforeReadImageList" @delete="deleteFileImageList" multiple :max-count="50" />
  22. </div>
  23. <van-row justify="space-around" style=" position:fixed;bottom:0;left:0;width:100%;height:50px;text-align: center;">
  24. <van-col span="12"><van-button type="primary" style="width:100px;" round @click="uploadImgList = [],uploadImgList1 = []">清空</van-button></van-col>
  25. <van-col span="12"><van-button type="primary" style="width:100px;" round @click="submitUploadList">上传</van-button></van-col>
  26. </van-row>
  27. </van-popup>
  28. <div style="display:flex;width:95%;margin:0 auto;justify-content:space-between;padding: 0px 0 15px">
  29. <div :class="{activeBtn : activeBtn==1,disactiveBtn :activeBtn!=1 }" @click="$router.push({path:'/homesteadSurvey/list'})">入户核查</div>
  30. <div :class="{activeBtn : activeBtn==2,disactiveBtn :activeBtn!=2 }" @click="$router.push({path:'/homesteadSurvey/list2'})">农户信息</div>
  31. <div :class="{activeBtn : activeBtn==3,disactiveBtn :activeBtn!=3 }" @click="$router.push({path:'/homesteadSurvey/list3'})">所有权人</div>
  32. <div :class="{activeBtn : activeBtn==4,disactiveBtn :activeBtn!=4 }" @click="$router.push({path:'/homesteadSurvey/list4'})">切换地图</div>
  33. </div>
  34. </div>
  35. <div style="background:#fff;padding:10px 2.5%;display: flex;justify-content: space-between;">
  36. <div style="text-align:center;background: rgba(122,201,67,0.2);width: 49%;font-size: 14px;border-radius: 8px;display: flex;align-items: center;justify-content: center;padding: 2px 0;">
  37. <img src="../../assets/images/housesteadSurvey/list01.png" alt="">
  38. <p style="margin-left: 10px;">
  39. <span style="color:#60B722;line-height:.8rem;">宅基地数:</span>
  40. <span style="color:#60B722;line-height:.8rem;"><span style="font-size:16px;color: #448815;">{{qbNums}}</span> 宗</span>
  41. </p>
  42. </div>
  43. <div style="text-align:center;background: rgba(122,201,67,0.2);width: 49%;font-size: 14px;border-radius: 8px;display: flex;align-items: center;justify-content: center;padding: 2px 0;">
  44. <img src="../../assets/images/housesteadSurvey/list02.png" alt="">
  45. <p style="margin-left: 10px;">
  46. <span style="color:#60B722;line-height:.8rem">使用权人数:</span>
  47. <span style="color:#60B722;line-height:.8rem"><span style="font-size:16px;color: #448815;">{{totalR}}</span> 人</span>
  48. </p>
  49. </div>
  50. </div>
  51. </van-sticky>
  52. <div v-if="activeBtn==1">
  53. <van-search v-model="zjdvalue" placeholder="请输入搜索关键词" show-action @search="onSearchzjd">
  54. <template #action>
  55. <van-icon name="add" color="rgba(122,201,67,1)" size=".8rem" @click="onClickzjd" style="vertical-align:middle;"/>
  56. </template>
  57. </van-search>
  58. <van-tabs v-model="active" title-active-color="#7AC943" color="#7AC943" @click="getZjdList">
  59. <van-tab >
  60. <template #title>全部<van-badge v-if="qbNums>=0" :content="qbNums" /></template>
  61. <!--<van-pull-refresh v-model="isLoadingzjd" @refresh="onRefreshzjd">-->
  62. <van-list
  63. v-model:loading="loading1"
  64. :finished="finished1"
  65. finished-text="没有更多了"
  66. @load="onRefreshzjd"
  67. :immediate-check="false"
  68. >
  69. <van-cell v-for="(item,index) in list" :key="index" size="small" :clickable="true" style="border-radius: 16px;
  70. box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px">
  71. <template #title>
  72. <p style="color:#22B7F2">{{limitWords(item.syqr)}}
  73. <van-button v-if="item.houseDataConfirmStatus=='CONFIRMED'" plain round color="#7AC943" size="mini" style="vertical-align:middle;float:right;" @click="setCookies(item)">查看</van-button>
  74. <van-button v-if="item.houseDataConfirmStatus!='CONFIRMED'"plain round color="#FA5353" size="mini" style="vertical-align:middle;float:right;" @click="setCookies(item)">调查</van-button>
  75. <van-button plain round color="#FA5353" size="mini" v-if="item.houseDataConfirmStatus!='CONFIRMED'" style="vertical-align:middle;float:right;margin-right:10px" @click="deleteZjd(item,index)">删除</van-button>
  76. <span v-if="item.houseDataConfirmStatus=='CONFIRMED'&&item.zjdAudit=='0'" style="color:#ff976a;float:right;font-size:12px;margin-right:10px;">待审核</span>
  77. <span v-if="item.houseDataConfirmStatus=='CONFIRMED'&&item.zjdAudit=='1'" style="color:#07c160;float:right;font-size:12px;margin-right:10px;">已审核</span>
  78. <span v-if="item.houseDataConfirmStatus=='CONFIRMED'&&item.zjdAudit=='2'" style="color:#ee0a24;float:right;font-size:12px;margin-right:10px;">已驳回</span>
  79. </p>
  80. </template>
  81. <!--<template #default>
  82. </template>-->
  83. <template #label>
  84. <p>宅基地代码: {{item.zjddm}} </p>
  85. <p>宗地面积: {{item.zdmj}}㎡
  86. <span style="color:#22B7F2;float:right;">{{item.updateBy}}</span>
  87. </p>
  88. </template>
  89. <template #icon>
  90. <van-icon name="clock" color="#22b7f2" style="margin-top:10px;margin-right:10px;"/>
  91. </template>
  92. </van-cell>
  93. </van-list>
  94. <!--</van-pull-refresh>-->
  95. </van-tab>
  96. <van-tab >
  97. <template #title>已核查<van-badge v-if="yhcNums>=0" :content="yhcNums" /></template>
  98. <!--<van-pull-refresh v-model="isLoadingzjd" @refresh="onRefreshzjd">-->
  99. <van-list
  100. v-model:loading="loading2"
  101. :finished="finished2"
  102. finished-text="没有更多了"
  103. @load="onRefreshzjd"
  104. :immediate-check="false"
  105. >
  106. <van-cell v-for="(item,index) in list1" :key="index" size="small" :clickable="true" style="border-radius: 16px;
  107. box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px">
  108. <template #title>
  109. <p style="color:#22B7F2">{{limitWords(item.syqr)}}
  110. <van-button plain round color="#7AC943" size="mini" style="vertical-align:middle;float:right;" @click="setCookies(item)">查看</van-button>
  111. <span v-if="item.zjdAudit=='0'" style="color:#ff976a;float:right;font-size:12px;margin-right:10px;">待审核</span>
  112. <span v-if="item.zjdAudit=='1'" style="color:#07c160;float:right;font-size:12px;margin-right:10px;">已审核</span>
  113. <span v-if="item.zjdAudit=='2'" style="color:#ee0a24;float:right;font-size:12px;margin-right:10px;">已驳回</span>
  114. <!--<van-button v-if="item.houseDataConfirmStatus!='CONFIRMED'" plain round color="#FA5353" size="mini" style="vertical-align:middle;float:right;" @click="setCookies(item)">开始调查</van-button>
  115. <van-button plain round color="#FA5353" size="mini" v-if="item.houseDataConfirmStatus!='CONFIRMED'" style="vertical-align:middle;float:right;margin-right:10px" @click="deleteZjd(item,index)">删除</van-button>-->
  116. </p>
  117. </template>
  118. <!--<template #default>
  119. <van-button v-if="item.houseDataConfirmStatus=='CONFIRMED'" plain round color="#7AC943" size="mini" style="vertical-align:middle;margin-top:15px;">查看详情</van-button>
  120. <van-button v-if="item.houseDataConfirmStatus!='CONFIRMED'"plain round color="#FA5353" size="mini" style="vertical-align:middle;margin-top:15px;">开始调查</van-button>
  121. </template>-->
  122. <template #label>
  123. <p>宅基地代码: {{item.zjddm}} </p>
  124. <p>宗地面积: {{item.zdmj}}㎡
  125. <span style="color:#22B7F2;float:right;">{{item.updateBy}}</span>
  126. </p>
  127. </template>
  128. <template #icon>
  129. <van-icon name="clock" color="#22b7f2" style="margin-top:10px;margin-right:10px;"/>
  130. </template>
  131. </van-cell>
  132. </van-list>
  133. <!--</van-pull-refresh>-->
  134. </van-tab>
  135. <van-tab >
  136. <template #title>未核查<van-badge v-if="whcNums>=0" :content="whcNums" /></template>
  137. <!--<van-pull-refresh v-model="isLoadingzjd" @refresh="onRefreshzjd">-->
  138. <van-list
  139. v-model:loading="loading3"
  140. :finished="finished3"
  141. finished-text="没有更多了"
  142. @load="onRefreshzjd"
  143. :immediate-check="false"
  144. >
  145. <van-cell v-for="(item,index) in list2" :key="index" size="small" :clickable="true" style="border-radius: 16px;
  146. box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px">
  147. <template #title>
  148. <p style="color:#22B7F2">{{limitWords(item.syqr)}}
  149. <van-button v-if="item.houseDataConfirmStatus=='CONFIRMED'" plain round color="#7AC943" size="mini" style="vertical-align:middle;float:right;" @click="setCookies(item)">查看</van-button>
  150. <van-button v-if="item.houseDataConfirmStatus!='CONFIRMED'"plain round color="#FA5353" size="mini" style="vertical-align:middle;float:right;" @click="setCookies(item)">调查</van-button>
  151. <van-button plain round color="#FA5353" size="mini" v-if="item.houseDataConfirmStatus!='CONFIRMED'" style="vertical-align:middle;float:right;margin-right:10px" @click="deleteZjd(item,index)">删除</van-button>
  152. <span v-if="item.zjdAudit=='2'" style="color:#ee0a24;float:right;font-size:12px;margin-right:10px;">已驳回</span>
  153. </p>
  154. </template>
  155. <!--<template #default>
  156. <van-button v-if="item.houseDataConfirmStatus=='CONFIRMED'" plain round color="#7AC943" size="mini" style="vertical-align:middle;margin-top:15px;">查看详情</van-button>
  157. <van-button v-if="item.houseDataConfirmStatus!='CONFIRMED'"plain round color="#FA5353" size="mini" style="vertical-align:middle;margin-top:15px;">开始调查</van-button>
  158. </template>-->
  159. <template #label>
  160. <p>宅基地代码: {{item.zjddm}} </p>
  161. <p>宗地面积: {{item.zdmj}}㎡
  162. <span style="color:#22B7F2;float:right;">{{item.updateBy}}</span>
  163. </p>
  164. </template>
  165. <template #icon>
  166. <van-icon name="clock" color="#22b7f2" style="margin-top:10px;margin-right:10px;"/>
  167. </template>
  168. </van-cell>
  169. </van-list>
  170. <!--</van-pull-refresh>-->
  171. </van-tab>
  172. </van-tabs>
  173. </div>
  174. <div v-if="activeBtn==2" >
  175. <van-search v-model="nhvalue" placeholder="请输入农户姓名或证件号" show-action @search="onSearchnh">
  176. <template #action>
  177. <van-icon name="add" color="rgba(122,201,67,1)" size=".8rem" @click="onClicknh" style="vertical-align:middle;"/>
  178. </template>
  179. </van-search>
  180. <van-pull-refresh v-model="isLoadingnh" @refresh="onRefreshnh">
  181. <van-cell v-for="(item,index) in nhlist" :key="index" size="small" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px">
  182. <template #title>
  183. <p style="color:#22B7F2">{{item.xm}}
  184. <van-button plain round color="#7AC943" size="mini" style="vertical-align:middle;float:right;margin-left:10px;" @click="showPopuphncylist(item)">查看成员</van-button>
  185. <van-button plain round color="#7AC943" size="mini" style="vertical-align:middle;float:right;margin-left:10px;" @click="showPopupnh(item)">查看户主</van-button>
  186. <van-button plain round color="#FA5353" size="mini" v-if="!isFinished" style="vertical-align:middle;float:right;" @click="deletenh(item,index)">删除</van-button>
  187. </p>
  188. </template>
  189. <!-- <template #default>
  190. </template>-->
  191. <template #label>
  192. <p>证件号码:{{item.zjhm}}</p>
  193. <p>农户代码:{{item.nhdm}}</p>
  194. </template>
  195. <template #icon>
  196. <van-icon name="clock" color="#22b7f2" style="margin-top:10px;margin-right:10px;"/>
  197. </template>
  198. </van-cell>
  199. </van-pull-refresh>
  200. </div>
  201. <div v-if="activeBtn==3">
  202. <van-form @submit="onSubmitsyqr">
  203. <div style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px;padding:5px;background:#fff;">
  204. <van-field
  205. autocomplete="off"
  206. v-model="qlrform.qydm"
  207. name="区域代码"
  208. label="区域代码"
  209. placeholder="禁止修改"
  210. disabled
  211. input-align="right"
  212. />
  213. <van-field
  214. autocomplete="off"
  215. v-model="qlrform.suyqrdm"
  216. name="所有权人代码"
  217. label="所有权人代码"
  218. disabled
  219. placeholder="自动生成"
  220. input-align="right"
  221. />
  222. <van-field
  223. autocomplete="off"
  224. v-model="qlrform.suyqrmc"
  225. name="所有权人名称"
  226. label="所有权人名称"
  227. required
  228. placeholder="所有权人名称"
  229. input-align="right"
  230. :rules="[{ required: true, message: '所有权人名称不能为空' }]"
  231. />
  232. <van-field
  233. autocomplete="off"
  234. v-model="qlrform.suyqxzName"
  235. name="所有权性质"
  236. label="所有权性质"
  237. required
  238. placeholder="所有权性质"
  239. input-align="right"
  240. :rules="[{ required: true, message: '所有权性质不能为空' }]"
  241. @click="showsuyqxz = true"
  242. />
  243. <van-field
  244. autocomplete="off"
  245. v-model="qlrform.suyqxz"
  246. style="display:none"
  247. />
  248. <van-popup v-model="showsuyqxz" position="bottom" input-align="right">
  249. <van-picker
  250. show-toolbar
  251. :columns="suyqxzOptions"
  252. value-key="dictLabel"
  253. @confirm="onConfirmsuyqxz"
  254. @cancel="showsuyqxz = false"
  255. />
  256. </van-popup>
  257. <van-field
  258. autocomplete="off"
  259. v-model="qlrform.dbrxm"
  260. name="代表人姓名"
  261. label="代表人姓名"
  262. required
  263. placeholder="代表人姓名"
  264. input-align="right"
  265. :rules="[{ required: true, message: '代表人姓名不能为空' }]"
  266. />
  267. <van-field
  268. autocomplete="off"
  269. v-model="qlrform.dbrzjlx"
  270. style="display:none"
  271. />
  272. <van-field
  273. autocomplete="off"
  274. v-model="qlrform.dbrzjlxName"
  275. name="代表人证件类型"
  276. label="代表人证件类型"
  277. required
  278. placeholder="代表人证件类型"
  279. input-align="right"
  280. :rules="[{ required: true, message: '代表人证件类型不能为空' }]"
  281. @click="showdbrzjlx = true"
  282. />
  283. <van-popup v-model="showdbrzjlx" position="bottom" input-align="right">
  284. <van-picker
  285. show-toolbar
  286. :columns="zjlxOptions"
  287. value-key="dictLabel"
  288. @confirm="onConfirmdbrzjlx"
  289. @cancel="showdbrzjlx = false"
  290. />
  291. </van-popup>
  292. <van-field
  293. autocomplete="off"
  294. v-model="qlrform.dbrzjhm"
  295. name="代表人证件号码"
  296. label="代表人证件号码"
  297. required
  298. placeholder="代表人证件号码"
  299. input-align="right"
  300. :rules="[{ required: true, message: '代表人证件号码不能为空' },{validator:validatorIdcardqlr,message:'身份证号格式错误!'}]"
  301. />
  302. <van-field
  303. autocomplete="off"
  304. v-model="qlrform.dbrlxdh"
  305. name="代表人联系电话"
  306. label="代表人联系电话"
  307. placeholder="代表人联系电话"
  308. type="number"
  309. input-align="right"
  310. required
  311. :rules="[{ required: true, message: '代表人联系电话不能为空' }]"
  312. />
  313. <van-field
  314. autocomplete="off"
  315. v-model="qlrform.dbrtxdz"
  316. name="代表人通讯地址"
  317. label="代表人通讯地址"
  318. required
  319. placeholder="代表人通讯地址"
  320. input-align="right"
  321. :rules="[{ required: true, message: '代表人通讯地址不能为空' }]"
  322. />
  323. <van-field
  324. autocomplete="off"
  325. v-model="qlrform.dbryzbm"
  326. name="代表人邮政编码"
  327. label="代表人邮政编码"
  328. required
  329. placeholder="代表人邮政编码"
  330. input-align="right"
  331. maxlength="6"
  332. :rules="[{ required: true, message: '代表人邮政编码不能为空' }]"
  333. />
  334. <van-field name="radio" label="是否成立农村集体经济组织" required input-align="right" autocomplete="off">
  335. <template #input>
  336. <van-radio-group v-model="qlrform.sfclncjtjjzz" direction="horizontal">
  337. <van-radio name="Y">是</van-radio>
  338. <van-radio name="N">否 </van-radio>
  339. </van-radio-group>
  340. </template>
  341. </van-field>
  342. <van-field
  343. autocomplete="off"
  344. v-model="qlrform.dlrxm"
  345. name="代理人姓名"
  346. label="代理人姓名"
  347. placeholder="代理人姓名"
  348. input-align="right"
  349. />
  350. <van-field
  351. autocomplete="off"
  352. v-model="qlrform.dlrzjlx"
  353. style="display:none"
  354. />
  355. <van-field
  356. autocomplete="off"
  357. v-model="qlrform.dlrzjlxName"
  358. name="代理人证件类型"
  359. label="代理人证件类型"
  360. placeholder="代理人证件类型"
  361. input-align="right"
  362. @click="showdlrzjlx = true"
  363. />
  364. <van-popup v-model="showdlrzjlx" position="bottom" input-align="right">
  365. <van-picker
  366. show-toolbar
  367. :columns="zjlxOptions"
  368. value-key="dictLabel"
  369. @confirm="onConfirmdlrzjlx"
  370. @cancel="showdlrzjlx = false"
  371. />
  372. </van-popup>
  373. <van-field
  374. autocomplete="off"
  375. v-model="qlrform.dlrzjhm"
  376. name="代理人证件号码"
  377. label="代理人证件号码"
  378. placeholder="代理人证件号码"
  379. input-align="right"
  380. />
  381. <van-field
  382. autocomplete="off"
  383. v-model="qlrform.dlrlxdh"
  384. name="代理人联系电话"
  385. label="代理人联系电话"
  386. placeholder="代理人联系电话"
  387. input-align="right"
  388. />
  389. <van-field
  390. autocomplete="off"
  391. v-model="qlrform.dlrtxdz"
  392. name="代理人通讯地址"
  393. label="代理人通讯地址"
  394. placeholder="代理人通讯地址"
  395. input-align="right"
  396. />
  397. <van-field
  398. autocomplete="off"
  399. v-model="qlrform.dlryzbm"
  400. name="代理人邮政编码"
  401. label="代理人邮政编码"
  402. placeholder="代理人邮政编码"
  403. input-align="right"
  404. />
  405. </div>
  406. <div style="border-radius: 16px;
  407. box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px;padding:5px;background:#fff;">
  408. <van-field
  409. autocomplete="off"
  410. v-model="qlrform.ncjtjjzzdm"
  411. name="农村集体经济组织代码"
  412. label="农村集体经济组织代码"
  413. placeholder="农村集体经济组织代码"
  414. input-align="right"
  415. />
  416. <van-field
  417. autocomplete="off"
  418. v-model="qlrform.ncjtjjzzmc"
  419. name="农村集体经济组织名称"
  420. label="农村集体经济组织名称"
  421. placeholder="农村集体经济组织名称"
  422. input-align="right"
  423. />
  424. <van-field
  425. autocomplete="off"
  426. v-model="qlrform.fbfdm"
  427. name="发包方代码"
  428. label="发包方代码"
  429. placeholder="发包方代码"
  430. input-align="right"
  431. />
  432. <van-field
  433. autocomplete="off"
  434. v-model="qlrform.fbfmc"
  435. name="发包方名称"
  436. label="发包方名称"
  437. placeholder="发包方名称"
  438. input-align="right"
  439. />
  440. <van-field
  441. autocomplete="off"
  442. v-model="qlrform.sjlyName"
  443. name="数据来源"
  444. label="数据来源"
  445. placeholder="数据来源"
  446. input-align="right"
  447. @click="showsjly = true"
  448. required
  449. :rules="[{ required: true, message: '数据来源不能为空' }]"
  450. />
  451. <van-field
  452. autocomplete="off"
  453. v-model="qlrform.sjly"
  454. style="display:none"
  455. />
  456. <van-popup v-model="showsjly" position="bottom" input-align="right">
  457. <van-picker
  458. show-toolbar
  459. :columns="sjlyOptions"
  460. value-key="dictLabel"
  461. @confirm="onConfirmsjly"
  462. @cancel="showsjly = false"
  463. />
  464. </van-popup>
  465. <van-field
  466. autocomplete="off"
  467. v-model="qlrform.bz"
  468. name="备注"
  469. label="备注"
  470. placeholder="备注"
  471. input-align="right"
  472. />
  473. </div>
  474. <div style="margin: 16px;" v-if="!isFinished">
  475. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  476. </div>
  477. </van-form>
  478. </div>
  479. <div v-if="activeBtn==4" style="overflow:hidden">
  480. <!-- <van-search placeholder="请输入宅基地号查询" v-if="false">
  481. <template #action>
  482. </template>
  483. </van-search>-->
  484. <div id="mapWrapAll" style="width: 100%;height: calc(100vh - 247px);"></div>
  485. <div id="info" style="display: none"></div>
  486. <div id="deleteHistory" style="display: none"></div>
  487. <div id="deleteHistoryMap" style="display: none"></div>
  488. <van-overlay :show="showSearch" @click="closeSearchBox" />
  489. <!--搜索栏目-->
  490. <div class="searchBar_wrap" :style="{bottom : bottomHeight}">
  491. <van-search
  492. v-model="seachText"
  493. show-action
  494. placeholder="请输入宗地或权利人信息"
  495. >
  496. <template #action>
  497. <van-icon :name="require('../../assets/images/housesteadSurvey/add02.png')" color="rgba(122,201,67,1)" size=".8rem" id="query" style="vertical-align:middle;"/>
  498. </template>
  499. </van-search>
  500. <div class="searchBox" style="display: none;">
  501. <van-cell center v-for="(item,index) in mapDataAll" :key="index">
  502. <template #title>
  503. <p><van-icon name="manager" /><span>{{item.shyqrdbxm}}</span><span style="background: rgba(122, 201, 67, 0.4);color:#7ac943">{{item.paceType}}</span>
  504. <!--<span style="background: rgba(122, 201, 67, 0.4);color:#7ac943">{{item.typeTc}}</span>--></p>
  505. </template>
  506. <template #default>
  507. <p style="border: 1px solid #7ac943;color:#7ac943;" @click="zjdSs(item)">查看详情</p>
  508. </template>
  509. <template #label>
  510. <p style="font-size: 0.25rem;color: #666666;">宅基地代码 {{item.zjddm}}</p>
  511. <p style="font-size: 0.25rem;color: #666666;">宗地面积 {{item.zdmj}}㎡</p>
  512. </template>
  513. </van-cell>
  514. </div>
  515. </div>
  516. <!--图层-->
  517. <div class="rightZoom_wrap">
  518. <img src="../../assets/images/housesteadSurvey/tool1.png">
  519. <div class="amplification" @click="selectionPushMap">图层</div>
  520. </div>
  521. <!--放大缩小-->
  522. <div class="mapZoom_wrap">
  523. <div class="qtMap" id="mapAllQt">
  524. <img src="../../assets/images/housesteadSurvey/tool2.png">
  525. <p>全图</p>
  526. </div>
  527. <!-- <div class="clMap" @click="" id="area">-->
  528. <!-- <img src="../../assets/images/housesteadSurvey/tool3.png">-->
  529. <!-- <p>测量</p>-->
  530. <!-- </div>-->
  531. <div class="hcMap" @click="zjdHc">
  532. <img src="../../assets/images/housesteadSurvey/tool4.png">
  533. <p>核查</p>
  534. </div>
  535. <div class="htMap" @click="" id="htMapAll">
  536. <img src="../../assets/images/housesteadSurvey/tool5.png">
  537. <p>绘图</p>
  538. </div>
  539. <div class="dwMap" @click="" id="dwMapAll">
  540. <img src="../../assets/images/housesteadSurvey/tool6.png">
  541. <p>定位</p>
  542. </div>
  543. </div>
  544. <!--列表拉取详情-->
  545. <div class="homesteadList_wrap" v-show="homesteadListStatus">
  546. <div class="main_m">
  547. <div class="title_m">
  548. <div class="more_icon" @click="homesteadListShrink"></div>
  549. <div class="name">筛选列表</div>
  550. </div>
  551. <div style="padding: 10px 15px;">
  552. <van-checkbox name="all" shape="square" id="checkAll" v-model="checkAllFlag" @click="checkAllArray">全选</van-checkbox>
  553. <div style="height: 15px;"></div>
  554. <van-checkbox-group v-model="checked" ref="checkboxGroup">
  555. <van-checkbox name="zjdDdc" shape="square" style="margin-bottom: 5px;" id="zjdDdc">
  556. <template #default>
  557. 待<i style="margin-right: 0.5em;"></i>调<i style="margin-right: 0.5em;"></i>查<span style="display: inline-block;border:2px solid #F9F900;height: 10px;width: 20px;vertical-align: middle;margin-left: 10px;"></span>
  558. </template>
  559. </van-checkbox>
  560. <van-checkbox name="zjdDcyc" shape="square" style="margin-bottom: 5px;" id="zjdDcyc">
  561. <template #default>
  562. 调查异常<span style="display: inline-block;border:2px solid #FF8000;height: 10px;width: 20px;vertical-align: middle;margin-left: 10px;"></span>
  563. </template>
  564. </van-checkbox>
  565. <van-checkbox name="zjdDcwc" shape="square" style="margin-bottom: 5px;" id="zjdDcwc">
  566. <template #default>
  567. 调查完成<span style="display: inline-block;border:2px solid #82D900;height: 10px;width: 20px;vertical-align: middle;margin-left: 10px;"></span>
  568. </template>
  569. </van-checkbox>
  570. <van-checkbox name="zjdDcbh" shape="square" style="margin-bottom: 5px;" id="zjdDcbh">
  571. <template #default>
  572. 调查驳回<span style="display: inline-block;border:2px solid #F75000;height: 10px;width: 20px;vertical-align: middle;margin-left: 10px;"></span>
  573. </template>
  574. </van-checkbox>
  575. <van-checkbox name="zjdSptg" shape="square" style="margin-bottom: 5px;" id="zjdSptg">
  576. <template #default>
  577. 审批通过<span style="display: inline-block;border:2px solid #9F4D95;height: 10px;width: 20px;vertical-align: middle;margin-left: 10px;"></span>
  578. </template>
  579. </van-checkbox>
  580. <van-checkbox name="fsssSx" shape="square" style="margin-bottom: 5px;" id="fsssSx">
  581. <template #default>
  582. 附属设施<span style="display: inline-block;background: #FF8C00;opacity: 0.5;height: 10px;width: 20px;vertical-align: middle;margin-left: 10px;"></span>
  583. </template>
  584. </van-checkbox>
  585. <van-checkbox name="zrzSx" shape="square" style="margin-bottom: 5px;" id="zrzSx">
  586. <template #default>
  587. 自<i style="margin-right: 0.5em;"></i>然<i style="margin-right: 0.5em;"></i>幢<span style="display: inline-block;background: #00FA9A;opacity: 0.5;height: 10px;width: 20px;vertical-align: middle;margin-left: 10px;"></span>
  588. </template>
  589. </van-checkbox>
  590. </van-checkbox-group>
  591. </div>
  592. </div>
  593. </div>
  594. <van-overlay :show="selectionIconShow" @click="homesteadListShrink" />
  595. </div>
  596. <van-popup v-model="shownh" style="height:100%;width:100%;">
  597. <div class="bannerBg">
  598. <van-nav-bar
  599. style="background:transparent;border-bottom-width:0;"
  600. @click-left="shownh=false"
  601. >
  602. <template #left>
  603. <van-icon name="arrow-left" size="18" color="#fff" />
  604. </template>
  605. <template #title>
  606. <p style="color:#fff">{{nhform.id?"":"新增"}}户主信息</p>
  607. </template>
  608. </van-nav-bar>
  609. </div>
  610. <div style="margin:20px;">
  611. <van-form @submit="onSubmitnh">
  612. <van-field
  613. autocomplete="off"
  614. input-align="right"
  615. v-model="nhform.suyqrdm"
  616. name="所有权人代码"
  617. label="所有权人代码"
  618. placeholder="所有权人代码"
  619. required
  620. disabled
  621. :rules="[{ required: true, message: '所有权人代码不能为空' }]"
  622. />
  623. <van-field
  624. autocomplete="off"
  625. input-align="right"
  626. v-model="nhform.nhdm"
  627. name="农户代码"
  628. label="农户代码"
  629. placeholder="自动生成"
  630. disabled
  631. />
  632. <van-field
  633. autocomplete="off"
  634. input-align="right"
  635. v-model="nhform.hzxm"
  636. name="户主姓名"
  637. label="户主姓名"
  638. placeholder="户主姓名"
  639. required
  640. :rules="[{ required: true, message: '户主姓名不能为空' }]"
  641. />
  642. <van-field
  643. autocomplete="off"
  644. input-align="right"
  645. v-model="nhform.hzzjlxName"
  646. name="户主证件类型"
  647. label="户主证件类型"
  648. placeholder="户主证件类型"
  649. required
  650. readonly
  651. :rules="[{ required: true, message: '户主证件类型不能为空' }]"
  652. @click="showhzzjlx = true"
  653. />
  654. <van-field
  655. autocomplete="off"
  656. v-model="nhform.hzzjlx"
  657. style="display:none"
  658. />
  659. <van-field
  660. autocomplete="off"
  661. v-model="nhform.hzzjhm"
  662. input-align="right"
  663. name="户主证件号码"
  664. label="户主证件号码"
  665. placeholder="户主证件号码"
  666. required
  667. :rules="[{ required: true, message: '户主证件号码不能为空' },{validator:validatorIdcardnh,message:'身份证号格式错误!'}]"
  668. />
  669. <van-field
  670. autocomplete="off"
  671. input-align="right"
  672. v-model="nhform.txdz"
  673. name="通讯地址"
  674. label="通讯地址"
  675. placeholder="通讯地址"
  676. required
  677. :rules="[{ required: true, message: '通讯地址不能为空' }]"
  678. />
  679. <van-field
  680. autocomplete="off"
  681. input-align="right"
  682. v-model="nhform.hncysl"
  683. name="户内成员数量"
  684. label="户内成员数量"
  685. placeholder="户内成员数量"
  686. required
  687. :rules="[{ required: true, message: '户内成员数量不能为空' }]"
  688. />
  689. <van-field name="radio" label="婚姻状况" input-align="right" autocomplete="off">
  690. <template #input>
  691. <van-radio-group v-model="nhform.hyzk" direction="horizontal">
  692. <van-radio v-for="dict in hyzkOptions" :key="dict.dictValue" :name="dict.dictValue">{{dict.dictLabel}}</van-radio>
  693. </van-radio-group>
  694. </template>
  695. </van-field>
  696. <van-field
  697. autocomplete="off"
  698. input-align="right"
  699. v-model="nhform.phone"
  700. name="电话号码"
  701. label="电话号码"
  702. placeholder="电话号码"
  703. />
  704. <van-field
  705. autocomplete="off"
  706. input-align="right"
  707. v-model="nhform.occupationName"
  708. name="职业"
  709. label="职业"
  710. placeholder="职业"
  711. required
  712. readonly
  713. :rules="[{ required: true, message: '职业不能为空' }]"
  714. @click="showhzoccupation = true"
  715. />
  716. <van-field
  717. autocomplete="off"
  718. v-model="nhform.occupation"
  719. style="display:none"
  720. />
  721. <van-field
  722. autocomplete="off"
  723. input-align="right"
  724. v-model="nhform.jzqkName"
  725. name="居住情况"
  726. label="居住情况"
  727. placeholder="居住情况"
  728. required
  729. readonly
  730. :rules="[{ required: true, message: '居住情况不能为空' }]"
  731. @click="showhzjzqk = true"
  732. />
  733. <van-field
  734. autocomplete="off"
  735. v-model="nhform.jzqk"
  736. style="display:none"
  737. />
  738. <van-field
  739. autocomplete="off"
  740. input-align="right"
  741. v-model="nhform.jzhcssfyzfName"
  742. name="在集镇或城市是否有住房"
  743. label="在集镇或城市是否有住房"
  744. placeholder="在集镇或城市是否有住房"
  745. required
  746. readonly
  747. :rules="[{ required: true, message: '在集镇或城市是否有住房不能为空' }]"
  748. @click="showhzjzhcssfyzf = true"
  749. />
  750. <van-field
  751. autocomplete="off"
  752. v-model="nhform.jzhcssfyzf"
  753. style="display:none"
  754. />
  755. <van-field name="radio" label="在其他村庄是否有住房" input-align="right" autocomplete="off">
  756. <template #input>
  757. <van-radio-group v-model="nhform.zqtczsfyzf" direction="horizontal">
  758. <van-radio name="1">是</van-radio>
  759. <van-radio name="0">否</van-radio>
  760. </van-radio-group>
  761. </template>
  762. </van-field>
  763. <van-field name="radio" label="是否本村村民" input-align="right" autocomplete="off">
  764. <template #input>
  765. <van-radio-group v-model="nhform.sfbccm" direction="horizontal">
  766. <van-radio name="1">是</van-radio>
  767. <van-radio name="0">否</van-radio>
  768. </van-radio-group>
  769. </template>
  770. </van-field>
  771. <van-field name="radio" label="是否贫困户" input-align="right" autocomplete="off">
  772. <template #input>
  773. <van-radio-group v-model="nhform.sfpkh" direction="horizontal">
  774. <van-radio name="1">是</van-radio>
  775. <van-radio name="0">否</van-radio>
  776. </van-radio-group>
  777. </template>
  778. </van-field>
  779. <van-field name="radio" label="是否五保户" input-align="right" autocomplete="off">
  780. <template #input>
  781. <van-radio-group v-model="nhform.sfwbh" direction="horizontal">
  782. <van-radio name="1">是</van-radio>
  783. <van-radio name="0">否</van-radio>
  784. </van-radio-group>
  785. </template>
  786. </van-field>
  787. <van-field
  788. autocomplete="off"
  789. input-align="right"
  790. v-model="nhform.sjlyName"
  791. name="数据来源"
  792. label="数据来源"
  793. placeholder="数据来源"
  794. required
  795. readonly
  796. :rules="[{ required: true, message: '能为空' }]"
  797. @click="showhzsjly = true"
  798. />
  799. <van-field
  800. autocomplete="off"
  801. v-model="nhform.sjly"
  802. style="display:none"
  803. />
  804. <van-field
  805. autocomplete="off"
  806. input-align="right"
  807. v-model="nhform.bz"
  808. name="备注"
  809. label="备注"
  810. placeholder="备注"
  811. />
  812. <div style="text-align:center;overflow:auto;">
  813. <van-button plain round color="#7AC943" size="mini" style="margin:0 auto;" native-type="button" @click="showPopuphncylist(nhform)">查看户内成员列表</van-button>
  814. </div>
  815. <div style="margin: 16px;" v-if="!isFinished">
  816. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  817. </div>
  818. </van-form>
  819. </div>
  820. </van-popup>
  821. <!--户主数据来源-->
  822. <van-popup v-model="showhzsjly" position="bottom">
  823. <van-picker
  824. show-toolbar
  825. :columns="sjlyOptions"
  826. value-key="dictLabel"
  827. @confirm="onConfirmhzsjly"
  828. @cancel="showhzsjly = false"
  829. />
  830. </van-popup>
  831. <!--户内成员数据来源-->
  832. <van-popup v-model="showhncysjly" position="bottom">
  833. <van-picker
  834. show-toolbar
  835. :columns="sjlyOptions"
  836. value-key="dictLabel"
  837. @confirm="onConfirmhncysjly"
  838. @cancel="showhncysjly = false"
  839. />
  840. </van-popup>
  841. <!--集市或城市是否有住房-->
  842. <van-popup v-model="showhzjzhcssfyzf" position="bottom">
  843. <van-picker
  844. show-toolbar
  845. :columns="jzhcssfyzfOptions"
  846. value-key="dictLabel"
  847. @confirm="onConfirmhzjzhcssfyzf"
  848. @cancel="showhzjzhcssfyzf = false"
  849. />
  850. </van-popup>
  851. <!--户主证件类型-->
  852. <van-popup v-model="showhzzjlx" position="bottom">
  853. <van-picker
  854. show-toolbar
  855. :columns="zjlxOptions"
  856. value-key="dictLabel"
  857. @confirm="onConfirmhzzjlx"
  858. @cancel="showhzzjlx = false"
  859. />
  860. </van-popup>
  861. <!--户内成员证件类型-->
  862. <van-popup v-model="showhncyzjlx" position="bottom">
  863. <van-picker
  864. show-toolbar
  865. :columns="zjlxOptions"
  866. value-key="dictLabel"
  867. @confirm="onConfirmhncyzjlx"
  868. @cancel="showhncyzjlx = false"
  869. />
  870. </van-popup>
  871. <!--户内成员与户主关系-->
  872. <van-popup v-model="showhncyyhzgx" position="bottom">
  873. <van-picker
  874. show-toolbar
  875. :columns="yhzgxOptions"
  876. value-key="dictLabel"
  877. @confirm="onConfirmhncyyhzgx"
  878. @cancel="showhncyyhzgx = false"
  879. />
  880. </van-popup>
  881. <!--户内成员职业-->
  882. <van-popup v-model="showhncyoccupation" position="bottom">
  883. <van-picker
  884. show-toolbar
  885. :columns="occupationOptions"
  886. value-key="dictLabel"
  887. @confirm="onConfirmhncyoccupation"
  888. @cancel="showhncyoccupation = false"
  889. />
  890. </van-popup>
  891. <!--户内成员成员备注-->
  892. <van-popup v-model="showhncycybz" position="bottom">
  893. <van-picker
  894. show-toolbar
  895. :columns="cybzOptions"
  896. value-key="dictLabel"
  897. @confirm="onConfirmhncycybz"
  898. @cancel="showhncycybz = false"
  899. />
  900. </van-popup>
  901. <!--户内成员居住情况-->
  902. <van-popup v-model="showhncyjzqk" position="bottom">
  903. <van-picker
  904. show-toolbar
  905. :columns="jzqkOptions"
  906. value-key="dictLabel"
  907. @confirm="onConfirmhncyjzqk"
  908. @cancel="showhncyjzqk = false"
  909. />
  910. </van-popup>
  911. <!--户主职业-->
  912. <van-popup v-model="showhzoccupation" position="bottom">
  913. <van-picker
  914. show-toolbar
  915. :columns="occupationOptions"
  916. value-key="dictLabel"
  917. @confirm="onConfirmhzoccupation"
  918. @cancel="showhzoccupation = false"
  919. />
  920. </van-popup>
  921. <!--户主居住情况-->
  922. <van-popup v-model="showhzjzqk" position="bottom">
  923. <van-picker
  924. show-toolbar
  925. :columns="jzqkOptions"
  926. value-key="dictLabel"
  927. @confirm="onConfirmhzjzqk"
  928. @cancel="showhzjzqk = false"
  929. />
  930. </van-popup>
  931. <van-popup v-model="showhncylist" style="height:100%;width:100%;">
  932. <div class="bannerBg">
  933. <van-nav-bar
  934. style="background:transparent;border-bottom-width:0;"
  935. @click-left="showhncylist=false"
  936. >
  937. <template #left>
  938. <van-icon name="arrow-left" size="18" color="#fff" />
  939. </template>
  940. <template #title>
  941. <p style="color:#fff">户内成员列表</p>
  942. </template>
  943. </van-nav-bar>
  944. </div>
  945. <van-swipe-cell v-for="(item,index) in hncylist" :key="index" @click.native="showPopuphncy(item)" style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px auto;background:#fff;">
  946. <div style="padding:20px;">
  947. <p style="color:#22B7F2;font-size:20px;line-height:30px;"><van-icon name="wap-home" color="#22b7f2" size="20" style="margin-right:10px;"/>
  948. {{item.xm}}</p>
  949. <div style="display:flex;line-height:20px">
  950. <p style="flex:1;text-align:left;">证件号码</p>
  951. <p style="flex:1;text-align:right;">{{item.zjhm}}</p>
  952. </div>
  953. <div style="display:flex;line-height:20px">
  954. <p style="flex:1;text-align:left;">与户主关系</p>
  955. <p style="flex:1;text-align:right;">{{yhzgxfy(item.yhzgx)}}</p>
  956. </div>
  957. </div>
  958. <template #right v-if="!isFinished">
  959. <van-button square text="设为户主" type="primary" style="height:100%" @click="setNh(item,index)"/>
  960. <van-button square text="删除" type="danger" style="height:100%" @click="deletehncy(item.id,index)" />
  961. </template>
  962. </van-swipe-cell>
  963. <div style="border-radius: 16px;box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.16); width:calc( 100% - 40px);margin:20px;background:#fff;padding:20px;" v-if="!isFinished">
  964. <div style="text-align:center;" >
  965. <p style="color:#22B7F2;font-size:20px;line-height:30px;" @click="showPopuphncy('')"><van-icon name="plus" color="#22b7f2" size="20" style="margin-right:10px;"/>添加户内成员信息</p>
  966. </div>
  967. </div>
  968. </van-popup>
  969. <van-popup v-model="showhncy" style="height:100%;width:100%;">
  970. <div class="bannerBg">
  971. <van-nav-bar
  972. style="background:transparent;border-bottom-width:0;"
  973. @click-left="showhncy=!showhncy"
  974. >
  975. <template #left>
  976. <van-icon name="arrow-left" size="18" color="#fff" />
  977. </template>
  978. <template #title>
  979. <p style="color:#fff">户内成员</p>
  980. </template>
  981. </van-nav-bar>
  982. </div>
  983. <div style="margin:20px;">
  984. <van-form @submit="onSubmithncy">
  985. <van-field
  986. autocomplete="off"
  987. input-align="right"
  988. v-model="form5.nhdm"
  989. name="农户代码"
  990. label="农户代码"
  991. placeholder="农户代码"
  992. disabled
  993. required
  994. :rules="[{ required: true, message: '农户代码不能为空' }]"
  995. />
  996. <van-field
  997. autocomplete="off"
  998. input-align="right"
  999. v-model="form5.xm"
  1000. name="姓名"
  1001. label="姓名"
  1002. placeholder="姓名"
  1003. required
  1004. :rules="[{ required: true, message: '姓名不能为空' }]"
  1005. />
  1006. <van-field
  1007. autocomplete="off"
  1008. input-align="right"
  1009. v-model="form5.zjlxName"
  1010. name="证件类型"
  1011. label="证件类型"
  1012. placeholder="证件类型"
  1013. required
  1014. :rules="[{ required: true, message: '证件类型不能为空' }]"
  1015. readonly
  1016. @click="showhncyzjlx = true"
  1017. />
  1018. <van-field
  1019. autocomplete="off"
  1020. v-model="form5.zjlx"
  1021. style="display:none"
  1022. />
  1023. <van-field
  1024. autocomplete="off"
  1025. input-align="right"
  1026. v-model="form5.yhzgxName"
  1027. name="与户主关系"
  1028. label="与户主关系"
  1029. placeholder="与户主关系"
  1030. required
  1031. :rules="[{ required: true, message: '与户主关系不能为空' }]"
  1032. @click="showhncyyhzgx = true"
  1033. />
  1034. <van-field
  1035. autocomplete="off"
  1036. v-model="form5.yhzgx"
  1037. style="display:none"
  1038. />
  1039. <van-field
  1040. autocomplete="off"
  1041. input-align="right"
  1042. v-model="form5.zjhm"
  1043. name="证件号码"
  1044. label="证件号码"
  1045. placeholder="证件号码"
  1046. required
  1047. :rules="[{ required: true, message: '证件号码不能为空' },{validator:validatorIdcardhncy,message:'身份证号格式错误!'}]"
  1048. />
  1049. <van-field autocomplete="off" name="radio" label="性别" input-align="right" required
  1050. :rules="[{ required: true, message: '性别不能为空' }]">
  1051. <template #input>
  1052. <van-radio-group v-model="form5.xb" direction="horizontal">
  1053. <van-radio name="1">男</van-radio>
  1054. <van-radio name="2">女</van-radio>
  1055. <van-radio name="3">不详</van-radio>
  1056. </van-radio-group>
  1057. </template>
  1058. </van-field>
  1059. <van-field
  1060. autocomplete="off"
  1061. input-align="right"
  1062. v-model="form5.lxdh"
  1063. name="联系电话"
  1064. label="联系电话"
  1065. placeholder="联系电话"
  1066. />
  1067. <van-field name="radio" label="户口类型" input-align="right" autocomplete="off">
  1068. <template #input>
  1069. <van-radio-group v-model="form5.hklx" direction="horizontal">
  1070. <van-radio name="01">农业</van-radio>
  1071. <van-radio name="02">非农业</van-radio>
  1072. <van-radio name="03">其他</van-radio>
  1073. </van-radio-group>
  1074. </template>
  1075. </van-field>
  1076. <van-field name="radio" label="婚姻状况" input-align="right" autocomplete="off">
  1077. <template #input>
  1078. <van-radio-group v-model="form5.hyzk" direction="horizontal">
  1079. <van-radio v-for="dict in hyzkOptions" :key="dict.dictValue" :name="dict.dictValue">{{dict.dictLabel}}</van-radio>
  1080. </van-radio-group>
  1081. </template>
  1082. </van-field>
  1083. <van-field name="radio" label="是否本集体经济组织成员" input-align="right" autocomplete="off">
  1084. <template #input>
  1085. <van-radio-group v-model="form5.sfbjtjjzzcy" direction="horizontal">
  1086. <van-radio name="1">是</van-radio>
  1087. <van-radio name="0">否</van-radio>
  1088. </van-radio-group>
  1089. </template>
  1090. </van-field>
  1091. <van-field
  1092. autocomplete="off"
  1093. input-align="right"
  1094. v-model="form5.cybzName"
  1095. name="成员备注"
  1096. label="成员备注"
  1097. placeholder="成员备注"
  1098. @click="showhncycybz = true"
  1099. />
  1100. <van-field
  1101. autocomplete="off"
  1102. v-model="form5.cybz"
  1103. style="display:none"
  1104. />
  1105. <van-field
  1106. autocomplete="off"
  1107. input-align="right"
  1108. v-model="form5.cybzsm"
  1109. name="成员备注说明"
  1110. label="成员备注说明"
  1111. placeholder="成员备注说明"
  1112. />
  1113. <van-field
  1114. autocomplete="off"
  1115. input-align="right"
  1116. v-model="form5.occupationName"
  1117. name="职业"
  1118. label="职业"
  1119. placeholder="职业"
  1120. required
  1121. :rules="[{ required: true, message: '' }]"
  1122. @click="showhncyoccupation = true"
  1123. />
  1124. <van-field
  1125. autocomplete="off"
  1126. v-model="form5.occupation"
  1127. style="display:none"
  1128. />
  1129. <van-field
  1130. autocomplete="off"
  1131. input-align="right"
  1132. v-model="form5.jzqkName"
  1133. name="居住情况"
  1134. label="居住情况"
  1135. placeholder="居住情况"
  1136. required
  1137. :rules="[{ required: true, message: '' }]"
  1138. @click="showhncyjzqk = true"
  1139. />
  1140. <van-field
  1141. autocomplete="off"
  1142. v-model="form5.jzqk"
  1143. style="display:none"
  1144. />
  1145. <van-field name="radio" label="是否贫困户" input-align="right" autocomplete="off">
  1146. <template #input>
  1147. <van-radio-group v-model="form5.sfpkh" direction="horizontal">
  1148. <van-radio name="1">是</van-radio>
  1149. <van-radio name="0">否</van-radio>
  1150. </van-radio-group>
  1151. </template>
  1152. </van-field>
  1153. <van-field name="radio" label="是否五保户" input-align="right" autocomplete="off">
  1154. <template #input>
  1155. <van-radio-group v-model="form5.sfwbh" direction="horizontal">
  1156. <van-radio name="1">是</van-radio>
  1157. <van-radio name="0">否</van-radio>
  1158. </van-radio-group>
  1159. </template>
  1160. </van-field>
  1161. <van-field
  1162. autocomplete="off"
  1163. input-align="right"
  1164. v-model="form5.sjlyName"
  1165. name="数据来源"
  1166. label="数据来源"
  1167. placeholder="数据来源"
  1168. required
  1169. :rules="[{ required: true, message: '' }]"
  1170. @click="showhncysjly = true"
  1171. />
  1172. <van-field
  1173. autocomplete="off"
  1174. v-model="form5.sjly"
  1175. style="display:none"
  1176. />
  1177. <div style="margin: 16px;" v-if="!isFinished">
  1178. <van-button round block color="#7AC943" native-type="submit">保存</van-button>
  1179. </div>
  1180. </van-form>
  1181. </div>
  1182. </van-popup>
  1183. <!--绘制结束弹窗开始-->
  1184. <van-popup v-model:show="showhzht" style="width: 94%;border-radius: 15PX" :close-on-click-overlay="false">
  1185. <div style="padding: 5px 3% 3%;">
  1186. <h1 style="font-size: 0.35rem;font-weight: 400;border-bottom: 1px solid #ccc; line-height: 0.8rem;"><i style="display: inline-block;width: 1%;height: 0.4rem;background: #7ac943;vertical-align: middle;margin-right: 1%;"></i>是否完成绘制</h1>
  1187. <div style="text-align: center;margin-top: 3%;">
  1188. <p style="font-size: 0.3rem;display: inline-block;background: #ccc;padding: 2% 0;border-radius: 30PX;color: #FFF;margin-right: 10%;width: 40%" @click="deleteHistory">否</p>
  1189. <p style="font-size: 0.3rem;display: inline-block;background: #7ac943;padding: 2% 0;border-radius: 30PX;color: #FFF;width: 40%" @click="showhzlx = true,showhzht = false">是</p>
  1190. </div>
  1191. </div>
  1192. </van-popup>
  1193. <!-- background: #ccc -->
  1194. <van-popup v-model:show="showhzlx" style="width: 94%;border-radius: 15PX">
  1195. <div style="padding: 5px 3% 3%;">
  1196. <h1 style="font-size: 0.35rem;font-weight: 400;border-bottom: 1px solid #ccc; line-height: 0.8rem;"><i style="display: inline-block;width: 1%;height: 0.4rem;background: #7ac943;vertical-align: middle;margin-right: 1%;"></i>请选择绘制类型<van-icon name="cross" color="#666666" style="position: absolute;right: 2%;top: 0.1rem" @click="showhzlx = false,showhzht = true" /></h1>
  1197. <div style="text-align: center;margin-top: 3%;">
  1198. <p class="hzlxBtn" :style="{background: mapZjdData ? '#CCC':'#7ac943'}" @click="zjdTz">宅基地</p>
  1199. <p class="hzlxBtn" :style="{background: mapZjdData ? '#b026ff':'#CCC'}" @click="zrzTz">自然幢</p>
  1200. <p class="hzlxBtn" :style="{background: mapZjdData ? '#3ac2db':'#CCC'}" @click="fsssTz">附属设施</p>
  1201. </div>
  1202. </div>
  1203. </van-popup>
  1204. <!--绘制结束弹窗结束-->
  1205. </div>
  1206. </template>
  1207. <script>
  1208. import {listZjdzd,rhhcList,getQueryLand,getZjdzd,delZjdzdInfo,uploadFile,submitUploadImageList} from "@/api/homesteadSurvey/zjdzd";
  1209. import {addNh, delNh, exportNh, getNh, listNh, updateNh,setNhInfo} from "@/api/homesteadSurvey/nh";
  1210. import {addNhhncy, delNhhncy, exportNhhncy, getNhhncy, listNhhncy, updateNhhncy} from "@/api/homesteadSurvey/nhhncy";
  1211. import {listShyqr,setSyqrInfo} from "@/api/homesteadSurvey/shyqr";
  1212. import {listSuyqr,updateSuyqr,addSuyqr} from "@/api/homesteadSurvey/suyqr";
  1213. import {listZrz,getZrzZjdDmList,getZrz} from "@/api/homesteadSurvey/zrz";
  1214. import {listFsss,getFsssZjdDmList,getFsss} from "@/api/homesteadSurvey/fsss";
  1215. import {getGeoServerConfigKey} from "@/api/system/config";
  1216. import { listTown, getTown } from "@/api/homesteadSurvey/town";
  1217. import { listVillage} from "@/api/homesteadSurvey/village";
  1218. import {deptGetId,} from "@/api/homestead/index";
  1219. import $ from "jquery";
  1220. import {Dialog} from "vant";
  1221. import {ref} from "vue";
  1222. import axios from "axios";
  1223. export default {
  1224. name: "homesteadList",
  1225. data() {
  1226. return {
  1227. loading1:false,
  1228. finished1:false,
  1229. loading2:false,
  1230. finished2:false,
  1231. loading3:false,
  1232. finished3:false,
  1233. //全部
  1234. qbNums:0,
  1235. //已调查数量
  1236. yhcNums:0,
  1237. //未核查数量
  1238. whcNums:0,
  1239. // 总户数
  1240. totalH:0,
  1241. // 总人数
  1242. totalR:0,
  1243. zjdDdc:true,
  1244. zjdDcyc:false,
  1245. zjdDcwc:false,
  1246. zjdDcbh:false,
  1247. zjdSptg:false,
  1248. zrzSx :false,
  1249. fsssSx:false,
  1250. showhncysjly:false,
  1251. showhzsjly:false,
  1252. showhncycybz:false,
  1253. showhncyzjlx:false,
  1254. showhncyyhzgx:false,
  1255. showhzjzhcssfyzf:false,
  1256. showhncyoccupation:false,
  1257. showhncyjzqk:false,
  1258. showhzoccupation:false,
  1259. showhzjzqk:false,
  1260. // 下拉刷新
  1261. isLoadingnh:false,
  1262. countnh:0,
  1263. isLoadingzjd:false,
  1264. countqb:1,
  1265. countyhc:1,
  1266. countwhc:1,
  1267. // 使用权人表单弹出
  1268. shownh:false,
  1269. showhzht:false,
  1270. showhzlx:false,
  1271. showhncylist:false,
  1272. showhncy:false,
  1273. activeBtn:4,
  1274. value:'',
  1275. // 宅基地搜索框
  1276. zjdvalue:"",
  1277. // 使用权人搜索框
  1278. nhvalue:"",
  1279. active:2,
  1280. // 全部列表
  1281. list:[],
  1282. // 已核查列表
  1283. list1:[],
  1284. // 未核查列表
  1285. list2:[],
  1286. // 户主列表
  1287. nhlist:[],
  1288. // 户内成员表单
  1289. form5: {},
  1290. // 户内成员列表
  1291. hncylist:[],
  1292. currentRate:20,
  1293. // 使用权人
  1294. nhform:[],
  1295. // 户主列表
  1296. hzform:{},
  1297. // 权利人列表
  1298. qlrform:[],
  1299. // 权利人性质弹出框
  1300. showsuyqxz:false,
  1301. // 代理人证件类型弹出框
  1302. showdlrzjlx:false,
  1303. // 代表人证件类型弹出框
  1304. showdbrzjlx:false,
  1305. // 数据来源弹出框
  1306. showsjly:false,
  1307. surveyItem:{},
  1308. // 证件类型字典
  1309. zjlxOptions: [],
  1310. // 所有权性质字典
  1311. suyqxzOption: [],
  1312. // 婚姻状况字典
  1313. hyzkOptions:[],
  1314. // 数据来源字典
  1315. sjlyOptions:[],
  1316. // 居住情况字典
  1317. jzqkOptions:[],
  1318. // 与户主关系字典
  1319. yhzgxOptions:[],
  1320. // 职业字典
  1321. occupationOptions:[],
  1322. // 集镇或城市是否有住房字典
  1323. jzhcssfyzfOptions:[],
  1324. // 成员备注字典
  1325. cybzOptions:[],
  1326. columns:[],
  1327. show1:false,
  1328. showhzzjlx: false,
  1329. // 路由传过来的任务基本信息。
  1330. item: {},
  1331. //地图使用 --start
  1332. openMap: false,
  1333. mapTheGeomZrzId: null,
  1334. mapTheGeomZjdId: null,
  1335. mapTheGeomFsssId: null,
  1336. drawInsert:null,
  1337. mapZjdData:"",
  1338. mapZrzData:"",
  1339. mapFsssData:"",
  1340. mapZjdDataTure:"",
  1341. height: null,
  1342. mapZjdTeAll:{
  1343. active:"",
  1344. mapZjdAData:{},
  1345. mapZrzAData:{},
  1346. mapFsssAData:{},
  1347. },
  1348. mapHaDataValue:false,
  1349. mapHasDateStatus: 0, //0附属设施 1自然幢 2宅基地
  1350. selectionIconShow:false,
  1351. homesteadListStatus:false,
  1352. //地图绘制状态
  1353. draw: {
  1354. drawMapPolygon: false, //绘制地图
  1355. },
  1356. mapTownList: null,
  1357. mapVillageList: null,
  1358. coordinate:"",
  1359. checked:['zjdDdc'],
  1360. checkAllMap: false,
  1361. sx:"",
  1362. drawingClick:true,
  1363. //搜索---start
  1364. seachText: "",
  1365. //搜索栏目-操作栏显隐
  1366. searchBarOperVisbile: false,
  1367. mapDataAll: [],
  1368. showSearch:false,
  1369. bottomHeight:'0px',
  1370. //搜索---end
  1371. //测面
  1372. textMjAll:"",
  1373. clickBbox:"",
  1374. textMjAllNum:"",
  1375. //核查
  1376. zjdHcDy:"",
  1377. //绘图
  1378. htZjdZrzFsss:"",
  1379. //筛选
  1380. checkAllFlag: false,
  1381. CheckedAllArr: [],//全选数组
  1382. dataForm: {
  1383. imageUrl: []
  1384. },
  1385. dataList: [["zjdDdc"],["zjdDcyc"],["zjdDcwc"],["zjdDcbh"],["zjdSptg"], ["fsssSx"],["zrzSx"]], //地图使用 --end
  1386. checkBoxAll:[],
  1387. //地图跳转存之
  1388. mapAddJump:"",
  1389. mapAddJumpNum:"",
  1390. nhdm:"",
  1391. backTheGeom:"",
  1392. //地图服务地址
  1393. mapGeoServerUrl:"",
  1394. backMap:"",
  1395. // 任务完成标记
  1396. //宅基地点击事件
  1397. mapXs: false,
  1398. mapClick:"",
  1399. isFinished:false,
  1400. //
  1401. showImageList:false,
  1402. uploadImgList:[],
  1403. uploadImgList1:[],
  1404. // 字典列表json
  1405. dictTypeList:null
  1406. };
  1407. },
  1408. mounted(){
  1409. },
  1410. created(){
  1411. axios.get('../static/dictyType.json').then(res => {
  1412. this.dictTypeList = res.data
  1413. this.zjlxOptions = this.dictTypeList.zjlx;
  1414. this.suyqxzOptions = this.dictTypeList.qsxz;
  1415. this.sjlyOptions = this.dictTypeList.sjly;
  1416. this.hyzkOptions = this.dictTypeList.hyzk;
  1417. this.occupationOptions = this.dictTypeList.occupation;
  1418. this.jzqkOptions = this.dictTypeList.living_condition;
  1419. this.jzhcssfyzfOptions = this.dictTypeList.jzhcssfyzf;
  1420. this.cybzOptions = this.dictTypeList.member_remark;
  1421. })
  1422. this.mapShow();
  1423. this.getDicts("family_status").then(response => {
  1424. var arr = [];
  1425. response.data.forEach(function (item) {
  1426. if (item.dictLabel !== '户主') {
  1427. arr.push(item)
  1428. }
  1429. });
  1430. this.yhzgxOptions = arr;
  1431. });
  1432. if(this.$cookies.get("search") != null && this.$cookies.get("search") !="" && this.$cookies.get("search")!=undefined){
  1433. if(this.$cookies.get("search").activeBtn !=null){
  1434. if(this.$cookies.get("search").activeBtn == 4){
  1435. // if(location.href.indexOf("#reloaded")==-1){
  1436. // location.href=location.href+"#reloaded";
  1437. // location.reload();
  1438. // }
  1439. this.activeBtn = this.$cookies.get("search").activeBtn;
  1440. this.item = JSON.parse(localStorage.getItem("surveyItem"));
  1441. this.mapAddJump = this.$cookies.get("search").backMapZjdAData.deptId;
  1442. this.backTheGeom = this.$cookies.get("search").backMapZjdAData.theGeom;
  1443. this.mapZjdData = this.$cookies.get("search").backMapZjdAData;
  1444. this.mapZjdTeAll.mapZjdAData = this.$cookies.get("search").backMapZjdAData;
  1445. this.mapClick = this.mapZjdTeAll.mapZjdAData.zjddm;
  1446. this.mapXs =true;
  1447. this.zjdHcDy = 1;
  1448. this.mapZjdDataTure = 1;
  1449. this.mapAddJumpNum =1;
  1450. this.mapShow();
  1451. this.getZjdList();
  1452. if(this.item.taskStatus=="FINISHED"){
  1453. this.isFinished = true
  1454. }else{
  1455. this.isFinished = false
  1456. }
  1457. }
  1458. }
  1459. }else {
  1460. this.item = JSON.parse(localStorage.getItem("surveyItem"));
  1461. this.getZjdList();
  1462. }
  1463. },
  1464. methods: {
  1465. showUploadList(){
  1466. this.showImageList = true;
  1467. },
  1468. submitUploadList(){
  1469. submitUploadImageList(this.uploadImgList1).then(res => {
  1470. let _this = this
  1471. this.$toast({
  1472. icon: 'success', // 找到自己需要的图标
  1473. message: '上传成功',
  1474. duration:"1000",
  1475. onClose:function(){
  1476. _this.showImageList = false
  1477. }
  1478. })
  1479. })
  1480. },
  1481. // 图片上传前
  1482. beforeReadImageList(file){
  1483. let _this = this
  1484. if(file.length!=undefined){
  1485. file.map(res => {
  1486. let zjddm = res.file.name
  1487. //zjddm=zjddm.substring(0,zjddm.lastIndexOf("\("));
  1488. // 创建Canvas对象(画布)
  1489. let canvas = document.createElement('canvas')
  1490. // 获取对应的CanvasRenderingContext2D对象(画笔)
  1491. let context = canvas.getContext('2d')
  1492. // 创建新的图片对象
  1493. let img = new Image()
  1494. // 指定图片的DataURL(图片的base64编码数据)
  1495. img.src = res.content
  1496. // 监听浏览器加载图片完成,然后进行进行绘制
  1497. img.onload = () => {
  1498. /*const h = img.height
  1499. const w = img.width*/
  1500. let ch = img.height/5
  1501. let cw = img.width/5
  1502. let canvas = document.createElement('canvas')
  1503. let ctx = canvas.getContext('2d')
  1504. canvas.height = ch
  1505. canvas.width = cw
  1506. ctx.clearRect(0,0,cw,ch)
  1507. ctx.drawImage(img,0,0,cw,ch)
  1508. let base_img = canvas.toDataURL('image/jpeg')
  1509. let blobBin = atob(base_img.split(',')[1])
  1510. let d = []
  1511. for (let i=0;i<blobBin.length;i++){
  1512. d.push(blobBin.charCodeAt(i))
  1513. }
  1514. let data2 = new FormData();
  1515. data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'}));
  1516. uploadFile(data2).then(response => {
  1517. let p={
  1518. "zjddm":zjddm,
  1519. "url":response.fileName
  1520. }
  1521. _this.uploadImgList1.push(p)
  1522. })
  1523. }
  1524. })
  1525. }else{
  1526. let zjddm = file.file.name
  1527. //zjddm=zjddm.substring(0,zjddm.lastIndexOf("\("));
  1528. // 创建Canvas对象(画布)
  1529. let canvas = document.createElement('canvas')
  1530. // 获取对应的CanvasRenderingContext2D对象(画笔)
  1531. let context = canvas.getContext('2d')
  1532. // 创建新的图片对象
  1533. let img = new Image()
  1534. // 指定图片的DataURL(图片的base64编码数据)
  1535. img.src = file.content
  1536. // 监听浏览器加载图片完成,然后进行进行绘制
  1537. img.onload = () => {
  1538. /*const h = img.height
  1539. const w = img.width*/
  1540. let ch = img.height/5
  1541. let cw = img.width/5
  1542. let canvas = document.createElement('canvas')
  1543. let ctx = canvas.getContext('2d')
  1544. canvas.height = ch
  1545. canvas.width = cw
  1546. ctx.clearRect(0,0,cw,ch)
  1547. ctx.drawImage(img,0,0,cw,ch)
  1548. let base_img = canvas.toDataURL('image/jpeg')
  1549. let blobBin = atob(base_img.split(',')[1])
  1550. let d = []
  1551. for (let i=0;i<blobBin.length;i++){
  1552. d.push(blobBin.charCodeAt(i))
  1553. }
  1554. let data2 = new FormData();
  1555. data2.append("file", new Blob([new Uint8Array(d)],{type:'image/jpeg'}));
  1556. uploadFile(data2).then(response => {
  1557. let p={
  1558. "zjddm":zjddm,
  1559. "url":response.fileName
  1560. }
  1561. _this.uploadImgList1.push(p)
  1562. })
  1563. }
  1564. }
  1565. },
  1566. deleteFileImageList(file){
  1567. let url = file.file.name
  1568. this.uploadImgList1.map((res,index) => {
  1569. if(res.zjddm==url){
  1570. this.uploadImgList1.remove(index);
  1571. }
  1572. })
  1573. },
  1574. validatorIdcardqlr(val){
  1575. if(this.qlrform.dbrzjlx=='01'){
  1576. if(this.vcheckID(val)){
  1577. return true
  1578. }else {
  1579. return false
  1580. }
  1581. }else{
  1582. return true
  1583. }
  1584. },
  1585. validatorIdcardnh(val){
  1586. if(this.nhform.hzzjlx=='01'){
  1587. if(this.vcheckID(val)){
  1588. return true
  1589. }else {
  1590. return false
  1591. }
  1592. }else{
  1593. return true
  1594. }
  1595. },
  1596. validatorIdcardhncy(val){
  1597. if(this.form5.zjlx=='01'){
  1598. if(this.vcheckID(val)){
  1599. return true
  1600. }else {
  1601. return false
  1602. }
  1603. }else{
  1604. return true
  1605. }
  1606. },
  1607. checkCode(val) {
  1608. var p = /^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
  1609. var factor = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ];
  1610. var parity = [ 1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2 ];
  1611. var code = val.substring(17);
  1612. if(p.test(val)) {
  1613. var sum = 0;
  1614. for(var i=0;i<17;i++) {
  1615. sum += val[i]*factor[i];
  1616. }
  1617. if(parity[sum % 11] == code.toUpperCase()) {
  1618. return true;
  1619. }
  1620. }
  1621. return false;
  1622. },
  1623. checkDate (val) {
  1624. var pattern = /^(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)$/;
  1625. if(pattern.test(val)) {
  1626. var year = val.substring(0, 4);
  1627. var month = val.substring(4, 6);
  1628. var date = val.substring(6, 8);
  1629. var date2 = new Date(year+"-"+month+"-"+date);
  1630. if(date2 && date2.getMonth() == (parseInt(month) - 1)) {
  1631. return true;
  1632. }
  1633. }
  1634. return false;
  1635. },
  1636. checkProv(val) {
  1637. var pattern = /^[1-9][0-9]/;
  1638. var provs = {11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江 ",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北 ",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏 ",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门"};
  1639. if(pattern.test(val)) {
  1640. if(provs[val]) {
  1641. return true;
  1642. }
  1643. }
  1644. return false;
  1645. },
  1646. vcheckID(val){
  1647. if(this.checkCode(val)) {
  1648. var date = val.substring(6,14);
  1649. if(this.checkDate(date)) {
  1650. if(this.checkProv(val.substring(0,2))) {
  1651. return true;
  1652. }
  1653. }
  1654. }
  1655. return false;
  1656. },
  1657. deleteZjd(item,index){
  1658. Dialog.confirm({
  1659. title: '警告',
  1660. message: '将删除与此宅基地关联的使用权人,自然幢,房屋,附属设施等所有信息,同时删除后无法恢复,确认删除么?',
  1661. })
  1662. .then(() => {
  1663. // on confirm
  1664. delZjdzdInfo(item).then(res => {
  1665. if(res.code=="200"){
  1666. if(this.active==1){
  1667. this.list1.splice(index,1);
  1668. }else if(this.active==2){
  1669. this.list2.splice(index,1);
  1670. }else{
  1671. this.list.splice(index,1);
  1672. }
  1673. }
  1674. })
  1675. })
  1676. .catch(() => {
  1677. // on cancel
  1678. });
  1679. },
  1680. //删除户主
  1681. deletenh(item,index){
  1682. let yes = true
  1683. let params={
  1684. nhdm : item.nhdm,
  1685. deptId: item.deptId
  1686. }
  1687. listNhhncy(params).then((res) => {
  1688. console.log(res.rows.length)
  1689. if(res.rows.length>0){
  1690. yes = false
  1691. this.$toast({
  1692. icon: 'error', // 找到自己需要的图标
  1693. message: '无法删除,此户主存在户内成员!',
  1694. duration:"1000",
  1695. onClose:function(){
  1696. }
  1697. })
  1698. }else{
  1699. listShyqr(params).then((res) => {
  1700. if(res.rows.length>0){
  1701. yes = false
  1702. this.$toast({
  1703. icon: 'error', // 找到自己需要的图标
  1704. message: '无法删除,此户主已经成为使用权人!',
  1705. duration:"1000",
  1706. onClose:function(){
  1707. }
  1708. })
  1709. }else{
  1710. if(yes){
  1711. Dialog.confirm({
  1712. title: '警告',
  1713. message: '确认删除此使用权人么?',
  1714. })
  1715. .then(() => {
  1716. // on confirm
  1717. delNh(item.id).then(res => {
  1718. if(res.code=="200"){
  1719. this.nhlist.splice(index,1);
  1720. this.totalH--
  1721. this.totalR--
  1722. }
  1723. })
  1724. })
  1725. .catch(() => {
  1726. // on cancel
  1727. });
  1728. }
  1729. }
  1730. });
  1731. }
  1732. });
  1733. },
  1734. // 设为户主
  1735. setNh(item,index){
  1736. Dialog.confirm({
  1737. title: '警告',
  1738. message: '此操作将删除原户主,并将此成员设为新户主,是否确认操作?',
  1739. })
  1740. .then(() => {
  1741. // on confirm
  1742. delNhhncy(item.id).then(res => {
  1743. if(res.code=="200"){
  1744. this.hncylist.splice(index,1);
  1745. this.totalR--
  1746. }
  1747. })
  1748. // 更新户主信息
  1749. let pnh = {
  1750. deptId : item.deptId,
  1751. nhdm : item.nhdm,
  1752. hzxm:item.xm,
  1753. hzzjlx :item.zjlx,
  1754. hzzjhm :item.zjhm
  1755. }
  1756. setNhInfo(pnh).then(res => {
  1757. })
  1758. // 更新使用权人
  1759. let psyqr = {
  1760. deptId : item.deptId,
  1761. nhdm : item.nhdm,
  1762. shyqrdbxm : item.xm,
  1763. shyqrdbzjlx : item.zjlx,
  1764. shyqrdbzjhm : item.zjhm,
  1765. xb : item.xb
  1766. }
  1767. setSyqrInfo(psyqr).then(res => {
  1768. })
  1769. })
  1770. .catch(() => {
  1771. // on cancel
  1772. });
  1773. },
  1774. //删除户内成员
  1775. deletehncy(id,index){
  1776. Dialog.confirm({
  1777. title: '警告',
  1778. message: '删除后无法恢复,确认删除此成员么?',
  1779. })
  1780. .then(() => {
  1781. // on confirm
  1782. delNhhncy(id).then(res => {
  1783. if(res.code=="200"){
  1784. this.hncylist.splice(index,1);
  1785. this.totalR--
  1786. }
  1787. })
  1788. })
  1789. .catch(() => {
  1790. // on cancel
  1791. });
  1792. },
  1793. // 字数限制
  1794. limitWords(val){
  1795. if(val==null||val==""){
  1796. return "无"
  1797. }else{
  1798. if(val.length>11){
  1799. val = val.slice(0,10) +"..."
  1800. }
  1801. return val
  1802. }
  1803. },
  1804. // 与户主关系翻译
  1805. yhzgxfy(value){
  1806. let label
  1807. this.yhzgxOptions.map(res => {
  1808. if(res.dictValue == value){
  1809. label = res.dictLabel
  1810. }
  1811. })
  1812. return label
  1813. },
  1814. onRefreshzjd(){
  1815. this.isLoadingzjd = false;
  1816. let _this = this
  1817. if(this.active==1&&this.loading2){
  1818. let params = {
  1819. "houseDataConfirmStatus" : "CONFIRMED",
  1820. "pageNum": this.countyhc+1,
  1821. "pageSize":10,
  1822. }
  1823. listZjdzd(params).then((response) => {
  1824. if(response.rows.length>0&&this.list1.length<response.total){
  1825. response.rows.map(res => {
  1826. this.list1.push(res)
  1827. })
  1828. this.countyhc++
  1829. this.loading2 = false
  1830. }else{
  1831. this.loading2 = false
  1832. this.finished2 = true
  1833. }
  1834. });
  1835. }else if(this.active==2&&this.loading3){
  1836. let params = {
  1837. "houseDataConfirmStatus" : "UNCONFIRMED",
  1838. "pageNum": this.countwhc+1,
  1839. "pageSize":10,
  1840. }
  1841. listZjdzd(params).then((response) => {
  1842. if(response.rows.length>0&&this.list2.length<response.total){
  1843. response.rows.map(res => {
  1844. this.list2.push(res)
  1845. })
  1846. this.countwhc++
  1847. this.loading3 = false
  1848. }else{
  1849. this.finished3 = true
  1850. }
  1851. });
  1852. }else if(this.active==0&&this.loading1){
  1853. let params = {
  1854. "deptId" : this.item.deptId,
  1855. "pageNum": this.countqb+1,
  1856. "pageSize":10,
  1857. }
  1858. listZjdzd(params).then((response) => {
  1859. if(response.rows.length>0&&this.list.length<response.total){
  1860. response.rows.map(res => {
  1861. _this.list.push(res)
  1862. })
  1863. this.countqb++
  1864. this.loading1 = false
  1865. }else{
  1866. this.finished1 = true
  1867. }
  1868. });
  1869. }
  1870. },
  1871. getTotalHR(){
  1872. let params = {
  1873. "deptId" : this.surveyItem.deptId,
  1874. "pageNum": 1,
  1875. "pageSize":10,
  1876. }
  1877. listNh(params).then((response) => {
  1878. if(response.rows.length>=0){
  1879. this.totalH = response.total
  1880. }
  1881. listNhhncy(params).then((res) => {
  1882. if(res.rows.length>=0){
  1883. this.totalR = res.total + this.totalH
  1884. }
  1885. });
  1886. });
  1887. },
  1888. onRefreshnh(){
  1889. this.isLoadingnh = false
  1890. let params = {
  1891. "deptId" : this.item.deptId,
  1892. "pageNum": this.countnh+1,
  1893. "pageSize":10,
  1894. }
  1895. listNh(params).then((response) => {
  1896. if(response.rows.length>0&&this.nhlist.length<response.total){
  1897. response.rows.map(res => {
  1898. this.nhlist.unshift(res)
  1899. })
  1900. this.countnh++
  1901. }
  1902. });
  1903. },
  1904. setCookies(item){
  1905. //this.$cookies.set("search",JSON.stringify(item));
  1906. this.$cookies.set("zjdzdxx",JSON.stringify(item));
  1907. // let _this = this
  1908. // setTimeout(function(){
  1909. // _this.$router.push({name:'homesteadAdd'});
  1910. // },1000)
  1911. this.$router.push({path:'/homesteadSurvey/add',query: {res: item}});
  1912. },
  1913. // 入户核查搜索框新增。
  1914. onClickzjd(){
  1915. this.$cookies.remove("search");
  1916. this.$router.push({name:'homesteadAdd'});
  1917. },
  1918. // 农户信息搜索框新增。
  1919. onClicknh(){
  1920. this.shownh = true;
  1921. let params = {
  1922. "deptId" : this.item.deptId
  1923. }
  1924. this.qlrform={}
  1925. this.nhform={
  1926. "suyqrdm":null,
  1927. "deptId":this.item.deptId,
  1928. "hzzjlx":'01',
  1929. "hzzjlxName":"身份证",
  1930. "hyzk":'02',
  1931. "occupation":'1',
  1932. "occupationName":'务农',
  1933. "jzqk":'3',
  1934. "jzqkName":'常年居住',
  1935. "jzhcssfyzf":'1',
  1936. "jzhcssfyzfName":'无住房',
  1937. "zqtczsfyzf":'Y',
  1938. "sfbccm":'Y',
  1939. "sfpkh":'N',
  1940. "sfwbh":'N',
  1941. "sjly":'07',
  1942. "sjlyName":'农村集体产权制度改革',
  1943. }
  1944. listSuyqr(params).then((response) => {
  1945. if(response.rows.length>0){
  1946. this.qlrform = response.rows[0]
  1947. this.nhform.suyqrdm = this.qlrform.suyqrdm
  1948. this.nhform.txdz = response.rows[0].suyqrmc
  1949. }
  1950. });
  1951. },
  1952. // 返回
  1953. onClickLeft(){
  1954. this.$cookies.set("search","")
  1955. this.$router.push({name: this.$router.back(-1)});
  1956. },
  1957. onConfirmhncysjly(value){
  1958. this.form5.sjlyName = value.dictLabel
  1959. this.form5.sjly = value.dictValue
  1960. this.showhncysjly= false
  1961. },
  1962. onConfirmhzsjly(value){
  1963. this.nhform.sjlyName = value.dictLabel
  1964. this.nhform.sjly = value.dictValue
  1965. this.showhzsjly= false
  1966. },
  1967. onConfirmhncycybz(value){
  1968. this.form5.cybzName = value.dictLabel
  1969. this.form5.cybz = value.dictValue
  1970. this.showhncycybz= false
  1971. },
  1972. onConfirmhzjzhcssfyzf(value){
  1973. this.nhform.jzhcssfyzfName = value.dictLabel
  1974. this.nhform.jzhcssfyzf = value.dictValue
  1975. this.showhzjzhcssfyzf= false
  1976. },
  1977. onConfirmhncyyhzgx(value){
  1978. this.form5.yhzgxName = value.dictLabel
  1979. this.form5.yhzgx = value.dictValue
  1980. this.showhncyyhzgx = false
  1981. },
  1982. onConfirmhncyzjlx(value){
  1983. this.form5.zjlxName = value.dictLabel
  1984. this.form5.zjlx = value.dictValue
  1985. this.showhncyzjlx = false
  1986. },
  1987. onConfirmhncyjzqk(value){
  1988. this.form5.jzqkName = value.dictLabel
  1989. this.form5.jzqk = value.dictValue
  1990. this.showhncyjzqk = false
  1991. },
  1992. onConfirmhzjzqk(value){
  1993. this.nhform.jzqkName = value.dictLabel
  1994. this.nhform.jzqk = value.dictValue
  1995. this.showhzjzqk = false
  1996. },
  1997. onConfirmhncyoccupation(value){
  1998. this.form5.occupationName = value.dictLabel
  1999. this.form5.occupation = value.dictValue
  2000. this.showhncyoccupation = false
  2001. },
  2002. onConfirmhzoccupation(value){
  2003. this.nhform.occupationName = value.dictLabel
  2004. this.nhform.occupation = value.dictValue
  2005. this.showhzoccupation = false
  2006. },
  2007. onConfirmhzzjlx(value){
  2008. this.nhform.hzzjlxName = value.dictLabel
  2009. this.nhform.hzzjlx = value.dictValue
  2010. this.showhzzjlx = false
  2011. },
  2012. onConfirmdbrzjlx(value){
  2013. this.qlrform.dbrzjlxName = value.dictLabel
  2014. this.qlrform.dbrzjlx = value.dictValue
  2015. this.showdbrzjlx = false
  2016. },
  2017. onConfirmsuyqxz(value){
  2018. this.qlrform.suyqxzName = value.dictLabel
  2019. this.qlrform.suyqxz = value.dictValue
  2020. this.showsuyqxz = false
  2021. },
  2022. onConfirmdlrzjlx(value){
  2023. this.qlrform.dlrzjlxName = value.dictLabel
  2024. this.qlrform.dlrzjlx = value.dictValue
  2025. this.showdlrzjlx = false
  2026. },
  2027. onConfirmsjly(value){
  2028. this.qlrform.sjlyName = value.dictLabel
  2029. this.qlrform.sjly = value.dictValue
  2030. this.showsjly = false
  2031. },
  2032. // 户主保存
  2033. onSubmitnh(){
  2034. if(this.nhform.id!=null){
  2035. updateNh(this.nhform).then(
  2036. response => {
  2037. let _this =this
  2038. this.$toast({
  2039. icon: 'success', // 找到自己需要的图标
  2040. message: '修改成功',
  2041. duration:"1000",
  2042. onClose:function(){
  2043. _this.getNh()
  2044. let psyqr = {
  2045. deptId : _this.nhform.deptId,
  2046. nhdm : _this.nhform.nhdm,
  2047. shyqrdbxm : _this.nhform.hzxm,
  2048. shyqrdbzjlx : _this.nhform.hzzjlx,
  2049. shyqrdbzjhm : _this.nhform.hzzjhm,
  2050. dh : _this.nhform.phone,
  2051. dz : _this.nhform.txdz
  2052. }
  2053. setSyqrInfo(psyqr).then(res => {
  2054. _this.shownh = false
  2055. })
  2056. }
  2057. })
  2058. }
  2059. );
  2060. }else{
  2061. this.nhform.deptId = this.item.deptId
  2062. addNh(this.nhform).then(
  2063. response => {
  2064. this.totalR+=1
  2065. this.totalH+=1
  2066. let _this =this
  2067. this.$toast({
  2068. icon: 'success', // 找到自己需要的图标
  2069. message: '保存成功',
  2070. duration:"1000",
  2071. onClose:function(){
  2072. _this.shownh = false
  2073. _this.getNh()
  2074. }
  2075. })
  2076. }
  2077. );
  2078. }
  2079. },
  2080. // 所有权人保存
  2081. onSubmitsyqr(){
  2082. if(this.qlrform.id!=null){
  2083. updateSuyqr(this.qlrform).then(
  2084. response => {
  2085. let _this =this
  2086. this.$toast({
  2087. icon: 'success', // 找到自己需要的图标
  2088. message: '修改成功',
  2089. duration:"1000"
  2090. })
  2091. }
  2092. );
  2093. }else{
  2094. this.qlrform.deptId = this.item.deptId
  2095. addSuyqr(this.qlrform).then(
  2096. response => {
  2097. let _this =this
  2098. this.$toast({
  2099. icon: 'success', // 找到自己需要的图标
  2100. message: '保存成功',
  2101. duration:"1000"
  2102. })
  2103. }
  2104. );
  2105. }
  2106. },
  2107. // 查询所有权人
  2108. getSyqr(){
  2109. //删除地图选中状态
  2110. $("#deleteHistoryMap").trigger("click");
  2111. let params = {
  2112. "deptId" : this.item.deptId
  2113. }
  2114. this.qlrform ={
  2115. "deptId":this.item.deptId,
  2116. "suyqxz":'40',
  2117. "suyqxzName":'集体土地所有权',
  2118. "dbrzjlx":'01',
  2119. "dbrzjlxName":'身份证',
  2120. "sfclncjtjjzz":'Y',
  2121. "sjly":'04',
  2122. "sjlyName":"农村宅基地使用权确权登记发证"
  2123. }
  2124. listSuyqr(params).then((response) => {
  2125. if(response.rows.length>0){
  2126. this.qlrform = response.rows[0]
  2127. if(this.qlrform.suyqxz==null||this.qlrform.suyqxz==""){
  2128. this.qlrform.suyqxz = "40"
  2129. this.qlrform.suyqxzName = "集体土地所有权"
  2130. }
  2131. if(this.qlrform.dbrzjlx==null||this.qlrform.dbrzjlx==""){
  2132. this.qlrform.dbrzjlx = "01"
  2133. this.qlrform.dbrzjlxName = "身份证"
  2134. }
  2135. if(this.qlrform.sfclncjtjjzz==null||this.qlrform.sfclncjtjjzz==""){
  2136. this.qlrform.sfclncjtjjzz = "Y"
  2137. }
  2138. if(this.qlrform.sjly==null||this.qlrform.sjly==""){
  2139. this.qlrform.sjly = "04"
  2140. this.qlrform.sjlyName = "农村宅基地使用权确权登记发证"
  2141. }
  2142. this.zjlxOptions.map(res => {
  2143. if(res.dictValue == this.qlrform.dbrzjlx){
  2144. this.qlrform.dbrzjlxName = res.dictLabel
  2145. }
  2146. if(res.dictValue == this.qlrform.dlrzjlx){
  2147. this.qlrform.dlrzjlxName = res.dictLabel
  2148. }
  2149. })
  2150. this.suyqxzOptions.map(res => {
  2151. if(res.dictValue == this.qlrform.suyqxz){
  2152. this.qlrform.suyqxzName = res.dictLabel
  2153. }
  2154. })
  2155. this.sjlyOptions.map(res => {
  2156. if(res.dictValue == this.qlrform.sjly){
  2157. this.qlrform.sjlyName = res.dictLabel
  2158. }
  2159. })
  2160. }
  2161. });
  2162. this.mapZjdData = "";
  2163. this.mapZrzData = "";
  2164. this.mapFsssData = "";
  2165. //that.mapZjdTeAll.active ="1";
  2166. this.mapZjdTeAll.mapZjdAData = {};
  2167. this.mapZjdTeAll.mapZrzAData = {};
  2168. this.mapZjdTeAll.mapFsssAData = {};
  2169. this.mapZjdDataTure = "";
  2170. this.mapXs =false;
  2171. this.mapClick ="";
  2172. this.mapAddJump = "";
  2173. this.backTheGeom = "";
  2174. this.zjdHcDy = "";
  2175. this.mapZjdDataTure = "";
  2176. this.mapAddJumpNum ="";
  2177. },
  2178. // 查询农户列表
  2179. getNh(){
  2180. //删除地图选中状态
  2181. $("#deleteHistoryMap").trigger("click");
  2182. let params = {
  2183. "yhzgx" : "01"
  2184. }
  2185. listNhhncy(params).then((response) => {
  2186. this.nhlist = response.rows
  2187. this.totalN = response.total
  2188. });
  2189. this.mapZjdData = "";
  2190. this.mapZrzData = "";
  2191. this.mapFsssData = "";
  2192. //that.mapZjdTeAll.active ="1";
  2193. this.mapZjdTeAll.mapZjdAData = {};
  2194. this.mapZjdTeAll.mapZrzAData = {};
  2195. this.mapZjdTeAll.mapFsssAData = {};
  2196. this.mapZjdDataTure = "";
  2197. this.mapXs =false;
  2198. this.mapClick ="";
  2199. this.mapAddJump = "";
  2200. this.backTheGeom = "";
  2201. this.zjdHcDy = "";
  2202. this.mapZjdDataTure = "";
  2203. this.mapAddJumpNum ="";
  2204. },
  2205. //调查
  2206. getDc(){
  2207. //删除地图选中状态
  2208. $("#deleteHistoryMap").trigger("click");
  2209. this.mapZjdData = "";
  2210. this.mapZrzData = "";
  2211. this.mapFsssData = "";
  2212. //that.mapZjdTeAll.active ="1";
  2213. this.mapZjdTeAll.mapZjdAData = {};
  2214. this.mapZjdTeAll.mapZrzAData = {};
  2215. this.mapZjdTeAll.mapFsssAData = {};
  2216. this.mapZjdDataTure = "";
  2217. this.mapXs =false;
  2218. this.mapClick ="";
  2219. this.mapAddJump = "";
  2220. this.backTheGeom = "";
  2221. this.zjdHcDy = "";
  2222. this.mapZjdDataTure = "";
  2223. this.mapAddJumpNum ="";
  2224. },
  2225. // 农户信息搜索框
  2226. onSearchnh(){
  2227. let params = {
  2228. "deptId" : this.item.deptId,
  2229. "nhValue" : this.nhvalue
  2230. }
  2231. listNh(params).then((response) => {
  2232. this.nhlist = response.rows
  2233. });
  2234. },
  2235. // 宅基地搜索框
  2236. onSearchzjd(){
  2237. if(this.active==1){
  2238. let params = {
  2239. "deptId" : this.item.deptId,
  2240. "houseDataConfirmStatus" : "CONFIRMED",
  2241. "syqr" : this.zjdvalue
  2242. }
  2243. listZjdzd(params).then((response) => {
  2244. if (response.code == 200) {
  2245. this.list1 = response.rows
  2246. }
  2247. });
  2248. }else if(this.active==2){
  2249. let params = {
  2250. "deptId" : this.item.deptId,
  2251. "houseDataConfirmStatus" : "UNCONFIRMED",
  2252. "syqr" : this.zjdvalue
  2253. }
  2254. listZjdzd(params).then((response) => {
  2255. if (response.code == 200) {
  2256. this.list2 = response.rows
  2257. }
  2258. });
  2259. }else{
  2260. let params = {
  2261. "deptId" : this.item.deptId,
  2262. "syqr" : this.zjdvalue
  2263. }
  2264. listZjdzd(params).then((response) => {
  2265. if (response.code == 200) {
  2266. this.list = response.rows
  2267. }
  2268. });
  2269. }
  2270. },
  2271. // 户内成员弹窗
  2272. showPopuphncy(item){
  2273. this.showhncy = true
  2274. if(item.id==null||item.id==""){
  2275. this.form5 = {
  2276. "nhdm":this.nhdm,
  2277. "deptId":this.item.deptId,
  2278. "zjlx":'01',
  2279. "zjlxName":"身份证",
  2280. "yhzgx":"14",
  2281. "yhzgxName":"妻",
  2282. "hyzk":'02',
  2283. "hklx":'1',
  2284. "occupation":'1',
  2285. "occupationName":'务农',
  2286. "jzqk":'3',
  2287. "jzqkName":'常年居住',
  2288. "sfbjtjjzzcy":'Y',
  2289. "xb":'0',
  2290. "sfbccm":'Y',
  2291. "sfpkh":'N',
  2292. "sfwbh":'N',
  2293. "sjly":'07',
  2294. "sjlyName":'农村集体产权制度改革',
  2295. "cybz":'9',
  2296. "cybzName":'其他备注'
  2297. }
  2298. }else{
  2299. let _this = this
  2300. this.form5 = item
  2301. if(this.form5.nhdm==null||this.form5.nhdm==""){
  2302. this.form5.nhdm = this.nhform.nhdm
  2303. }
  2304. if(this.form5.deptId==null||this.form5.deptId==""){
  2305. this.form5.deptId = this.nhform.deptId
  2306. }
  2307. if(this.form5.zjlx==null||this.form5.zjlx==""){
  2308. this.form5.zjlx = "01"
  2309. this.form5.zjlxName = "身份证"
  2310. }
  2311. if(this.form5.yhzgx==null||this.form5.yhzgx==""){
  2312. this.form5.yhzgx = "14"
  2313. this.form5.yhzgxName = "妻"
  2314. }
  2315. if(this.form5.hyzk==null||this.form5.hyzk==""){
  2316. this.form5.hyzk = "02"
  2317. }
  2318. if(this.form5.hklx==null||this.form5.hklx==""){
  2319. this.form5.hklx = "1"
  2320. }
  2321. if(this.form5.occupation==null||this.form5.occupation==""){
  2322. this.form5.occupation = "1"
  2323. this.form5.occupationName = "务农"
  2324. }
  2325. if(this.form5.jzqk==null||this.form5.jzqk==""){
  2326. this.form5.jzqk = "3"
  2327. this.form5.jzqkName = "常年居住"
  2328. }
  2329. if(this.form5.sfbjtjjzzcy==null||this.form5.sfbjtjjzzcy==""){
  2330. this.form5.sfbjtjjzzcy = "Y"
  2331. }
  2332. if(this.form5.xb==null||this.form5.xb==""){
  2333. this.form5.xb = "0"
  2334. }
  2335. if(this.form5.sfbccm==null||this.form5.sfbccm==""){
  2336. this.form5.sfbccm = "Y"
  2337. }
  2338. if(this.form5.sfpkh==null||this.form5.sfpkh==""){
  2339. this.form5.sfpkh = "N"
  2340. }
  2341. if(this.form5.sfwbh==null||this.form5.sfwbh==""){
  2342. this.form5.sfwbh = "N"
  2343. }
  2344. if(this.form5.sjly==null||this.form5.sjly==""){
  2345. this.form5.sjly = "07"
  2346. this.form5.sjlyName = "农村集体产权制度改革"
  2347. }
  2348. if(this.form5.cybz==null||this.form5.cybz==""){
  2349. this.form5.cybz = "9"
  2350. this.form5.cybzName = "其他备注"
  2351. }
  2352. this.jzhcssfyzfOptions.map(res => {
  2353. if(res.dictValue == item.jzhcssfyzf){
  2354. this.form5.jzhcssfyzfName = res.dictLabel
  2355. }
  2356. })
  2357. this.zjlxOptions.map(res => {
  2358. if(res.dictValue == item.zjlx){
  2359. this.form5.zjlxName = res.dictLabel
  2360. }
  2361. })
  2362. this.occupationOptions.map(res => {
  2363. if(res.dictValue == item.occupation){
  2364. this.form5.occupationName = res.dictLabel
  2365. }
  2366. })
  2367. this.jzqkOptions.map(res => {
  2368. if(res.dictValue == item.jzqk){
  2369. this.form5.jzqkName = res.dictLabel
  2370. }
  2371. })
  2372. this.yhzgxOptions.map(res => {
  2373. if(res.dictValue == item.yhzgx){
  2374. this.form5.yhzgxName = res.dictLabel
  2375. }
  2376. })
  2377. this.cybzOptions.map(res => {
  2378. if(res.dictValue == item.cybz){
  2379. this.form5.cybzName = res.dictLabel
  2380. }
  2381. })
  2382. this.sjlyOptions.map(res => {
  2383. if(res.dictValue == item.sjly){
  2384. this.form5.sjlyName = res.dictLabel
  2385. }
  2386. })
  2387. }
  2388. },
  2389. // 户内成员列表
  2390. showPopuphncylist(item){
  2391. if(item.nhdm==null||item.nhdm==""){
  2392. this.$toast({
  2393. icon: 'error', // 找到自己需要的图标
  2394. message: '请先保存户主信息',
  2395. duration:"1000"
  2396. })
  2397. }else{
  2398. this.nhdm = item.nhdm
  2399. this.showhncylist = true
  2400. let params = {
  2401. "nhdm":item.nhdm,
  2402. "deptId":this.item.deptId
  2403. }
  2404. listNhhncy(params).then((response) => {
  2405. if (response.code == 200) {
  2406. this.hncylist = response.rows
  2407. }
  2408. });
  2409. }
  2410. },
  2411. showPopupnh(item){
  2412. this.shownh = true
  2413. this.nhform = item
  2414. this.jzhcssfyzfOptions.map(res => {
  2415. if(res.dictValue == item.jzhcssfyzf){
  2416. this.nhform.jzhcssfyzfName = res.dictLabel
  2417. }
  2418. })
  2419. this.zjlxOptions.map(res => {
  2420. if(res.dictValue == item.hzzjlx){
  2421. this.nhform.hzzjlxName = res.dictLabel
  2422. }
  2423. })
  2424. this.occupationOptions.map(res => {
  2425. if(res.dictValue == item.occupation){
  2426. this.nhform.occupationName = res.dictLabel
  2427. }
  2428. })
  2429. this.jzqkOptions.map(res => {
  2430. if(res.dictValue == item.jzqk){
  2431. this.nhform.jzqkName = res.dictLabel
  2432. }
  2433. })
  2434. this.sjlyOptions.map(res => {
  2435. if(res.dictValue == item.sjly){
  2436. this.nhform.sjlyName = res.dictLabel
  2437. }
  2438. })
  2439. },
  2440. getZjdList(){
  2441. let params = {
  2442. "surveyStatus":"1,2,3,4,5",
  2443. "pageNum": 1,
  2444. "pageSize":10,
  2445. }
  2446. rhhcList(params).then((response) => {
  2447. if (response.code == 200) {
  2448. this.list = response.data.zjdzdxxList
  2449. this.qbNums = response.data.zjdzs;
  2450. this.totalR = response.data.shyqrs;
  2451. /* if(response.rows.length>=10){
  2452. this.list = newList.slice(0,9)
  2453. }else {
  2454. this.list = newList
  2455. }
  2456. this.yhcNums = 0
  2457. this.whcNums = 0
  2458. this.list1 = []
  2459. this.list2 = []
  2460. response.rows.map(res => {
  2461. if(res.houseDataConfirmStatus == 'CONFIRMED'){
  2462. if(this.list1.length<10){
  2463. this.list1.push(res)
  2464. }
  2465. this.yhcNums ++
  2466. }else{
  2467. if(this.list2.length<10){
  2468. this.list2.push(res)
  2469. }
  2470. this.whcNums ++
  2471. }
  2472. })*/
  2473. }
  2474. });
  2475. let params1 = {
  2476. "houseDataConfirmStatus" : "CONFIRMED",
  2477. "pageNum": 1,
  2478. "pageSize":10,
  2479. }
  2480. listZjdzd(params1).then((response) => {
  2481. if (response.code == 200) {
  2482. this.yhcNums = response.total
  2483. this.list1 = response.rows
  2484. }
  2485. });
  2486. let params2 = {
  2487. "houseDataConfirmStatus" : "UNCONFIRMED",
  2488. "pageNum": 1,
  2489. "pageSize":10,
  2490. }
  2491. listZjdzd(params2).then((response) => {
  2492. if (response.code == 200) {
  2493. this.whcNums = response.total
  2494. this.list2 = response.rows
  2495. }
  2496. });
  2497. },
  2498. onConfirm(){},
  2499. /*onSubmithncy(){
  2500. if (this.form5.id != null) {
  2501. if (this.form5.zjlx=='01'&&parseInt(this.form5.zjhm.substr(16, 1)) % 2 == 1) {
  2502. if(this.form5.xb!='1'){
  2503. Dialog.confirm({
  2504. title: '警告',
  2505. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2506. })
  2507. .then(() => {
  2508. // on confirm
  2509. updateNhhncy(this.form5).then(response => {
  2510. let _this =this
  2511. this.$toast({
  2512. icon: 'success', // 找到自己需要的图标
  2513. message: '修改成功',
  2514. duration:"1000",
  2515. onClose:function(){
  2516. _this.showhncy = false
  2517. let params = {
  2518. "nhdm":_this.form5.nhdm,
  2519. deptId:_this.form5.deptId
  2520. }
  2521. listNhhncy(params).then((response) => {
  2522. _this.hncylist = response.rows
  2523. })
  2524. }
  2525. })
  2526. });
  2527. })
  2528. .catch(() => {
  2529. // on cancel
  2530. });
  2531. }else{
  2532. updateNhhncy(this.form5).then(response => {
  2533. let _this =this
  2534. this.$toast({
  2535. icon: 'success', // 找到自己需要的图标
  2536. message: '修改成功',
  2537. duration:"1000",
  2538. onClose:function(){
  2539. _this.showhncy = false
  2540. let params = {
  2541. "nhdm":_this.form5.nhdm,
  2542. deptId:_this.form5.deptId
  2543. }
  2544. listNhhncy(params).then((response) => {
  2545. _this.hncylist = response.rows
  2546. })
  2547. }
  2548. })
  2549. });
  2550. }
  2551. } else {
  2552. if(this.form5.xb=='1'){
  2553. Dialog.confirm({
  2554. title: '警告',
  2555. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2556. })
  2557. .then(() => {
  2558. // on confirm
  2559. updateNhhncy(this.form5).then(response => {
  2560. let _this =this
  2561. this.$toast({
  2562. icon: 'success', // 找到自己需要的图标
  2563. message: '修改成功',
  2564. duration:"1000",
  2565. onClose:function(){
  2566. _this.showhncy = false
  2567. let params = {
  2568. "nhdm":_this.form5.nhdm,
  2569. deptId:_this.form5.deptId
  2570. }
  2571. listNhhncy(params).then((response) => {
  2572. _this.hncylist = response.rows
  2573. })
  2574. }
  2575. })
  2576. });
  2577. })
  2578. .catch(() => {
  2579. // on cancel
  2580. });
  2581. }else{
  2582. updateNhhncy(this.form5).then(response => {
  2583. let _this =this
  2584. this.$toast({
  2585. icon: 'success', // 找到自己需要的图标
  2586. message: '修改成功',
  2587. duration:"1000",
  2588. onClose:function(){
  2589. _this.showhncy = false
  2590. let params = {
  2591. "nhdm":_this.form5.nhdm,
  2592. deptId:_this.form5.deptId
  2593. }
  2594. listNhhncy(params).then((response) => {
  2595. _this.hncylist = response.rows
  2596. })
  2597. }
  2598. })
  2599. });
  2600. }
  2601. }
  2602. } else {
  2603. if (this.form5.zjlx=='01'&&parseInt(this.form5.zjhm.substr(16, 1)) % 2 == 1) {
  2604. if(this.form5.xb!='1'){
  2605. Dialog.confirm({
  2606. title: '警告',
  2607. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2608. })
  2609. .then(() => {
  2610. // on confirm
  2611. addNhhncy(this.form5).then(response => {
  2612. let _this =this
  2613. this.$toast({
  2614. icon: 'success', // 找到自己需要的图标
  2615. message: '保存成功',
  2616. duration:"1000",
  2617. onClose:function(){
  2618. _this.showhncy = false
  2619. _this.totalR+=1
  2620. _this.totalH+=1
  2621. let params = {
  2622. "nhdm":_this.form5.nhdm,
  2623. deptId:_this.form5.deptId
  2624. }
  2625. listNhhncy(params).then((response) => {
  2626. _this.hncylist = response.rows
  2627. })
  2628. }
  2629. })
  2630. });
  2631. })
  2632. .catch(() => {
  2633. // on cancel
  2634. });
  2635. }else{
  2636. addNhhncy(this.form5).then(response => {
  2637. let _this =this
  2638. this.$toast({
  2639. icon: 'success', // 找到自己需要的图标
  2640. message: '保存成功',
  2641. duration:"1000",
  2642. onClose:function(){
  2643. _this.showhncy = false
  2644. _this.totalR+=1
  2645. _this.totalH+=1
  2646. let params = {
  2647. "nhdm":_this.form5.nhdm,
  2648. deptId:_this.form5.deptId
  2649. }
  2650. listNhhncy(params).then((response) => {
  2651. _this.hncylist = response.rows
  2652. })
  2653. }
  2654. })
  2655. });
  2656. }
  2657. } else {
  2658. if(this.form5.xb=='1'){
  2659. Dialog.confirm({
  2660. title: '警告',
  2661. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2662. })
  2663. .then(() => {
  2664. // on confirm
  2665. addNhhncy(this.form5).then(response => {
  2666. let _this =this
  2667. this.$toast({
  2668. icon: 'success', // 找到自己需要的图标
  2669. message: '保存成功',
  2670. duration:"1000",
  2671. onClose:function(){
  2672. _this.showhncy = false
  2673. _this.totalR+=1
  2674. _this.totalH+=1
  2675. let params = {
  2676. "nhdm":_this.form5.nhdm,
  2677. deptId:_this.form5.deptId
  2678. }
  2679. listNhhncy(params).then((response) => {
  2680. _this.hncylist = response.rows
  2681. })
  2682. }
  2683. })
  2684. });
  2685. })
  2686. .catch(() => {
  2687. // on cancel
  2688. });
  2689. }else{
  2690. addNhhncy(this.form5).then(response => {
  2691. let _this =this
  2692. this.$toast({
  2693. icon: 'success', // 找到自己需要的图标
  2694. message: '保存成功',
  2695. duration:"1000",
  2696. onClose:function(){
  2697. _this.showhncy = false
  2698. _this.totalR+=1
  2699. _this.totalH+=1
  2700. let params = {
  2701. "nhdm":_this.form5.nhdm,
  2702. deptId:_this.form5.deptId
  2703. }
  2704. listNhhncy(params).then((response) => {
  2705. _this.hncylist = response.rows
  2706. })
  2707. }
  2708. })
  2709. });
  2710. }
  2711. }
  2712. }
  2713. },*/
  2714. onSubmithncy(){
  2715. if (this.form5.id != null) {
  2716. if (this.form5.zjlx=='01'&&parseInt(this.form5.zjhm.substr(16, 1)) % 2 == 1) {
  2717. if(this.form5.xb!='1'){
  2718. Dialog.confirm({
  2719. title: '警告',
  2720. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2721. })
  2722. .then(() => {
  2723. // on confirm
  2724. updateNhhncy(this.form5).then(response => {
  2725. let _this =this
  2726. this.$toast({
  2727. icon: 'success', // 找到自己需要的图标
  2728. message: '修改成功',
  2729. duration:"1000",
  2730. onClose:function(){
  2731. _this.showhncy = false
  2732. let params = {
  2733. "nhdm":_this.form5.nhdm,
  2734. deptId:_this.form5.deptId
  2735. }
  2736. listNhhncy(params).then((response) => {
  2737. _this.hncylist = response.rows
  2738. })
  2739. }
  2740. })
  2741. });
  2742. })
  2743. .catch(() => {
  2744. // on cancel
  2745. });
  2746. }else{
  2747. updateNhhncy(this.form5).then(response => {
  2748. let _this =this
  2749. this.$toast({
  2750. icon: 'success', // 找到自己需要的图标
  2751. message: '修改成功',
  2752. duration:"1000",
  2753. onClose:function(){
  2754. _this.showhncy = false
  2755. let params = {
  2756. "nhdm":_this.form5.nhdm,
  2757. deptId:_this.form5.deptId
  2758. }
  2759. listNhhncy(params).then((response) => {
  2760. _this.hncylist = response.rows
  2761. })
  2762. }
  2763. })
  2764. });
  2765. }
  2766. } else if (this.form5.zjlx=='01'&&parseInt(this.form5.zjhm.substr(16, 1)) % 2 == 0){
  2767. if(this.form5.xb!='0'){
  2768. Dialog.confirm({
  2769. title: '警告',
  2770. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2771. })
  2772. .then(() => {
  2773. // on confirm
  2774. updateNhhncy(this.form5).then(response => {
  2775. let _this =this
  2776. this.$toast({
  2777. icon: 'success', // 找到自己需要的图标
  2778. message: '修改成功',
  2779. duration:"1000",
  2780. onClose:function(){
  2781. _this.showhncy = false
  2782. let params = {
  2783. "nhdm":_this.form5.nhdm,
  2784. deptId:_this.form5.deptId
  2785. }
  2786. listNhhncy(params).then((response) => {
  2787. _this.hncylist = response.rows
  2788. })
  2789. }
  2790. })
  2791. });
  2792. })
  2793. .catch(() => {
  2794. // on cancel
  2795. });
  2796. }else{
  2797. updateNhhncy(this.form5).then(response => {
  2798. let _this =this
  2799. this.$toast({
  2800. icon: 'success', // 找到自己需要的图标
  2801. message: '修改成功',
  2802. duration:"1000",
  2803. onClose:function(){
  2804. _this.showhncy = false
  2805. let params = {
  2806. "nhdm":_this.form5.nhdm,
  2807. deptId:_this.form5.deptId
  2808. }
  2809. listNhhncy(params).then((response) => {
  2810. _this.hncylist = response.rows
  2811. })
  2812. }
  2813. })
  2814. });
  2815. }
  2816. }else{
  2817. updateNhhncy(this.form5).then(response => {
  2818. let _this =this
  2819. this.$toast({
  2820. icon: 'success', // 找到自己需要的图标
  2821. message: '修改成功',
  2822. duration:"1000",
  2823. onClose:function(){
  2824. _this.showhncy = false
  2825. let params = {
  2826. "nhdm":_this.form5.nhdm,
  2827. deptId:_this.form5.deptId
  2828. }
  2829. listNhhncy(params).then((response) => {
  2830. _this.hncylist = response.rows
  2831. })
  2832. }
  2833. })
  2834. });
  2835. }
  2836. } else {
  2837. if (this.form5.zjlx=='01'&&parseInt(this.form5.zjhm.substr(16, 1)) % 2 == 1) {
  2838. if(this.form5.xb!='1'){
  2839. Dialog.confirm({
  2840. title: '警告',
  2841. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2842. })
  2843. .then(() => {
  2844. // on confirm
  2845. addNhhncy(this.form5).then(response => {
  2846. let _this =this
  2847. this.$toast({
  2848. icon: 'success', // 找到自己需要的图标
  2849. message: '保存成功',
  2850. duration:"1000",
  2851. onClose:function(){
  2852. _this.totalR+=1
  2853. _this.showhncy = false
  2854. let params = {
  2855. "nhdm":_this.form5.nhdm,
  2856. deptId:_this.form5.deptId
  2857. }
  2858. listNhhncy(params).then((response) => {
  2859. _this.hncylist = response.rows
  2860. })
  2861. }
  2862. })
  2863. });
  2864. })
  2865. .catch(() => {
  2866. // on cancel
  2867. });
  2868. }else{
  2869. addNhhncy(this.form5).then(response => {
  2870. let _this =this
  2871. this.$toast({
  2872. icon: 'success', // 找到自己需要的图标
  2873. message: '保存成功',
  2874. duration:"1000",
  2875. onClose:function(){
  2876. _this.totalR+=1
  2877. _this.showhncy = false
  2878. let params = {
  2879. "nhdm":_this.form5.nhdm,
  2880. deptId:_this.form5.deptId
  2881. }
  2882. listNhhncy(params).then((response) => {
  2883. _this.hncylist = response.rows
  2884. })
  2885. }
  2886. })
  2887. });
  2888. }
  2889. } else if (this.form5.zjlx=='01'&&parseInt(this.form5.zjhm.substr(16, 1)) % 2 == 0){
  2890. if(this.form5.xb!='0'){
  2891. Dialog.confirm({
  2892. title: '警告',
  2893. message: '成员性别与身份证号中性别信息不符,是否继续保存?',
  2894. })
  2895. .then(() => {
  2896. // on confirm
  2897. addNhhncy(this.form5).then(response => {
  2898. let _this =this
  2899. this.$toast({
  2900. icon: 'success', // 找到自己需要的图标
  2901. message: '保存成功',
  2902. duration:"1000",
  2903. onClose:function(){
  2904. _this.totalR+=1
  2905. _this.showhncy = false
  2906. let params = {
  2907. "nhdm":_this.form5.nhdm,
  2908. deptId:_this.form5.deptId
  2909. }
  2910. listNhhncy(params).then((response) => {
  2911. _this.hncylist = response.rows
  2912. })
  2913. }
  2914. })
  2915. });
  2916. })
  2917. .catch(() => {
  2918. // on cancel
  2919. });
  2920. }else{
  2921. addNhhncy(this.form5).then(response => {
  2922. let _this =this
  2923. this.$toast({
  2924. icon: 'success', // 找到自己需要的图标
  2925. message: '保存成功',
  2926. duration:"1000",
  2927. onClose:function(){
  2928. _this.totalR+=1
  2929. _this.showhncy = false
  2930. let params = {
  2931. "nhdm":_this.form5.nhdm,
  2932. deptId:_this.form5.deptId
  2933. }
  2934. listNhhncy(params).then((response) => {
  2935. _this.hncylist = response.rows
  2936. })
  2937. }
  2938. })
  2939. });
  2940. }
  2941. }else{
  2942. addNhhncy(this.form5).then(response => {
  2943. let _this =this
  2944. this.$toast({
  2945. icon: 'success', // 找到自己需要的图标
  2946. message: '保存成功',
  2947. duration:"1000",
  2948. onClose:function(){
  2949. _this.totalR+=1
  2950. _this.showhncy = false
  2951. let params = {
  2952. "nhdm":_this.form5.nhdm,
  2953. deptId:_this.form5.deptId
  2954. }
  2955. listNhhncy(params).then((response) => {
  2956. _this.hncylist = response.rows
  2957. })
  2958. }
  2959. })
  2960. });
  2961. }
  2962. }
  2963. },
  2964. mapShow() {
  2965. //删除地图选中状态
  2966. $("#deleteHistoryMap").trigger("click");
  2967. //通过数据直接查询方式--------加载较慢 start
  2968. //镇边界获取
  2969. // listTown().then(response => {
  2970. // if (response.code == 200) {
  2971. // this.mapTownList = response.rows;
  2972. // //村边界获取
  2973. // listVillage(this.queryParams).then(response => {
  2974. // this.mapVillageList = response.rows;
  2975. // listZjdzd().then((response) => {
  2976. // if (response.code == 200) {
  2977. // this.mapTheGeomZjdId= response.rows;
  2978. // listZrz().then((response) => {
  2979. // if (response.code == 200) {
  2980. // this.mapTheGeomZrzId = response.rows;
  2981. // listFsss().then((response) => {
  2982. // if (response.code == 200) {
  2983. // this.mapTheGeomFsssId = response.rows;
  2984. // }
  2985. // setTimeout(() => {
  2986. // this.GetMapsInit();
  2987. // }, 300);
  2988. // });
  2989. // }
  2990. // });
  2991. // }
  2992. // });
  2993. // });
  2994. // }
  2995. // });
  2996. //通过数据直接查询方式--------加载较慢 end
  2997. getGeoServerConfigKey().then(response => {
  2998. this.mapGeoServerUrl = response.msg;
  2999. setTimeout(() => {
  3000. this.GetMapsInit();
  3001. }, 300);
  3002. });
  3003. var that = this;
  3004. setTimeout(function () {
  3005. var height = $(".searchBar_wrap").outerHeight(true) - $(".searchBar_wrap .van-search").outerHeight(true)
  3006. that.bottomHeight = -height+'px'
  3007. },500)
  3008. },
  3009. //地图加载 -----start
  3010. GetMapsInit() {
  3011. //加载地图编辑
  3012. var that = this;
  3013. var map;
  3014. //点击事件添加样式
  3015. var hc_land_on;
  3016. document.getElementById("mapWrapAll").innerHTML = '';
  3017. var hc_land;
  3018. var projection = new ol.proj.Projection({
  3019. //地图投影类型
  3020. code: "EPSG:3857",
  3021. units: "degrees",
  3022. //extent:extent
  3023. });
  3024. var aerial = new ol.layer.Tile({
  3025. source: new ol.source.XYZ({
  3026. // url: "http://t0.tianditu.gov.cn/img_w/wmts?" +
  3027. // "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
  3028. // "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=cc4aba6e967096098249efa069733067",
  3029. url: "http://t{0-7}.tianditu.com/img_w/wmts?" +
  3030. "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
  3031. "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=cc4aba6e967096098249efa069733067",
  3032. }),
  3033. isGroup: true,
  3034. name: "卫星影像图",
  3035. });
  3036. var yingxzi = new ol.layer.Tile({
  3037. source: new ol.source.XYZ({
  3038. url: "http://t{0-7}.tianditu.com/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk= ",
  3039. }),
  3040. isGroup: true,
  3041. name: "天地图文字标注--卫星影像图",
  3042. });
  3043. //加载地图
  3044. map = new ol.Map({
  3045. controls: ol.control.defaults({attribution: false, zoom: false, rotate: false}).extend([]), //隐藏放大缩小按钮
  3046. layers: [aerial, yingxzi],
  3047. projection: projection,
  3048. target: "mapWrapAll",
  3049. view: new ol.View({
  3050. //center: ol.proj.fromLonLat([115.452752, 31.789033]),
  3051. //center: ol.proj.fromLonLat([115.452752, 31.789033]),
  3052. zoom: 10,
  3053. minZoom: 5, //地图缩小限制
  3054. maxZoom: 18.3, //地图放大限制
  3055. resolution: Math.random() * 0.00000001,
  3056. }),
  3057. interactions: ol.interaction.defaults({
  3058. pinchRotate: false // 移动端禁止地图旋转
  3059. }),
  3060. });
  3061. //使用geoserver服务查询开始 -------------------start
  3062. //镇边界查询开始 ------------------------------start
  3063. // var zhenTc= new ol.layer.Tile({
  3064. // source: new ol.source.TileWMS({
  3065. // url: that.mapGeoServerUrl+"/wms",
  3066. // params: {
  3067. // LAYERS: 'zjd_dc:t_house_survey_border_town',
  3068. // TILED: true,
  3069. // //cql_filter: cql_filter,
  3070. // SRID: 3857,
  3071. // },
  3072. // }),
  3073. // });
  3074. // map.addLayer(zhenTc);
  3075. //镇边界查询开始 ------------------------------end
  3076. //村边界查询开始 ------------------------------start
  3077. that.surveyItem = JSON.parse(localStorage.getItem("surveyItem"));
  3078. var cql_filter = "dept_id='" + that.surveyItem.deptId + "'";
  3079. var cunTc = new ol.layer.Image({
  3080. source: new ol.source.ImageWMS({
  3081. url: that.mapGeoServerUrl + "/wms",
  3082. params: {
  3083. LAYERS: 'nsgk_wulanhaote:t_homespace_cjqy',
  3084. TILED: true,
  3085. cql_filter: cql_filter,
  3086. SRID: 3857,
  3087. TIMESTAMP: new Date().getTime(),
  3088. },
  3089. resolution: Math.random() * 0.00000001,
  3090. }),
  3091. });
  3092. // //定位查询位置
  3093. // let param_dw = {
  3094. // srsName: "EPSG:3857",
  3095. // service: "WFS",
  3096. // version: "1.0.0",
  3097. // request: "GetFeature",
  3098. // typename: "zjd_dc:t_house_survey_border_village",
  3099. // //featureNS: 'nsgk_hc',//命名空间 URI
  3100. // cql_filter: cql_filter,
  3101. // //featurePrefix: 'nationalwater',//工作区名称
  3102. // //featureTypes: ['nationalwater:01fir'],//查询图层,可以是同一个工作区下多个图层,逗号隔开
  3103. // outputFormat: "application/json",
  3104. // //filter: ol.format.filter.equalTo(t,e,r)//前者是属性名,后者是对应值
  3105. // };
  3106. // let url_dw = that.mapGeoServerUrl + "/wfs"; //wfsurl;
  3107. // url_dw = url_dw + "?";
  3108. // for (let key in param_dw) {
  3109. // url_dw = url_dw + key + "=" + param_dw[key] + "&";
  3110. // }
  3111. // url_dw = url_dw.substr(0, url_dw.length - 1);
  3112. // fetch(url_dw, {
  3113. // method: "POST", // *GET, POST, PUT, DELETE, etc.
  3114. // })
  3115. // .then((res) => {
  3116. // var geojsonmap = res.json();
  3117. // return geojsonmap;
  3118. // })
  3119. // .then((data) => {
  3120. // if (that.backTheGeom != "" && that.backTheGeom != undefined && that.backTheGeom.substring(0, 1) == "{") {
  3121. // //自然幢图层查询开始 ------------------start
  3122. // var cql_filter_map = "dept_id='" + that.$cookies.get("item").deptId + "'" + "and zjddm='" + that.mapZjdData.zjddm + "'";
  3123. // zrzTc = new ol.layer.Image({
  3124. // source: new ol.source.ImageWMS({
  3125. // url: that.mapGeoServerUrl + "/wms",
  3126. // params: {
  3127. // LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
  3128. // TILED: true,
  3129. // cql_filter: cql_filter_map,
  3130. // SRID: 3857,
  3131. // TIMESTAMP: new Date().getTime(),
  3132. // },
  3133. // }),
  3134. // });
  3135. // map.addLayer(zrzTc);
  3136. // //自然幢图层查询开始 ------------------start
  3137. // //附属设施图层查询开始 ------------------start
  3138. // //var cql_filter_map = "dept_id='" + that.$cookies.get("item").deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  3139. // fsssTc = new ol.layer.Image({
  3140. // source: new ol.source.ImageWMS({
  3141. // url: that.mapGeoServerUrl + "/wms",
  3142. // params: {
  3143. // LAYERS: 'zjd_dc:t_house_survey_fsss',
  3144. // TILED: true,
  3145. // cql_filter: cql_filter_map,
  3146. // SRID: 3857,
  3147. // TIMESTAMP: new Date().getTime(),
  3148. // },
  3149. // }),
  3150. // });
  3151. // map.addLayer(fsssTc);
  3152. // //附属设施图层查询开始 ------------------end
  3153. // hc_land_on = new ol.layer.Vector({
  3154. // title: "add Layer",
  3155. // source: new ol.source.Vector({
  3156. // projection: projection,
  3157. // features: new ol.format.GeoJSON().readFeatures(that.backTheGeom),
  3158. // }),
  3159. // style: new ol.style.Style({
  3160. // stroke: new ol.style.Stroke({
  3161. // //边界样式
  3162. // color: "#CCFF66",
  3163. // width: 6,
  3164. // }),
  3165. // }),
  3166. // });
  3167. // map.addLayer(hc_land_on);
  3168. // var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  3169. // var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  3170. // var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  3171. // var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  3172. // //定位查询位置
  3173. // var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  3174. // that.clickBbox = center;
  3175. // console.log(that.mapZjdData);
  3176. // that.textMjAll = that.mapZjdData.zdmj;
  3177. // map.getView().animate({
  3178. // // 只设置需要的属性即可
  3179. // center: center, // 中心点
  3180. // zoom: 17.9, // 缩放级别
  3181. // rotation: undefined, // 缩放完成view视图旋转弧度
  3182. // duration: 1000, // 缩放持续时间,默认不需要设置
  3183. // resolution: Math.random() * 0.00000001,
  3184. // });
  3185. // //this.backMap =1;
  3186. // } else if (that.backTheGeom != "" && that.backTheGeom != undefined && that.backTheGeom.substring(0, 1) == "[") {
  3187. // //that.newHt ="1";
  3188. // var zbNew = JSON.stringify({
  3189. // "type": "MultiPolygon",
  3190. // "coordinates": [that.backTheGeom.replaceAll("\"", "")]
  3191. // });
  3192. // var leftJoin = zbNew.replace("\"[", "[");
  3193. // var rightJoin = leftJoin.replace("\"]", "]");
  3194. // hc_land_on = new ol.layer.Vector({
  3195. // title: "add Layer",
  3196. // source: new ol.source.Vector({
  3197. // projection: projection,
  3198. // features: new ol.format.GeoJSON().readFeatures("{\n" +
  3199. // " \"type\": \"Feature\",\n" +
  3200. // " \"geometry\":" + rightJoin + "}"),
  3201. // }),
  3202. // style: new ol.style.Style({
  3203. // fill: new ol.style.Fill({
  3204. // //矢量图层填充颜色,以及透明度
  3205. // color: "rgba(204, 255, 204,0.3)",
  3206. // }),
  3207. // stroke: new ol.style.Stroke({
  3208. // //边界样式
  3209. // color: "#CCFF66",
  3210. // width: 3,
  3211. // }),
  3212. // }),
  3213. // });
  3214. // map.addLayer(hc_land_on);
  3215. // var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  3216. // var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  3217. // var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  3218. // var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  3219. // //定位查询位置
  3220. // var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  3221. // that.clickBbox = center;
  3222. // that.textMjAll = that.mapZjdData.zdmj;
  3223. // map.getView().animate({
  3224. // // 只设置需要的属性即可
  3225. // center: center, // 中心点
  3226. // zoom: 16.9, // 缩放级别
  3227. // rotation: undefined, // 缩放完成view视图旋转弧度
  3228. // duration: 1000, // 缩放持续时间,默认不需要设置
  3229. // resolution: Math.random() * 0.00000001,
  3230. // });
  3231. // //this.backMap =1;
  3232. // } else {
  3233. // //通过村界大小视图显示
  3234. // // let resolution = map.getView().getResolutionForExtent(data.bbox, map.getSize());
  3235. // // resolution:resolution + Math.random() * 0.00000001,
  3236. // // map.getView().fit(data.bbox);
  3237. // // map.getView().setResolution(resolution);
  3238. // // //初始视图大小控制
  3239. // // map.getView().setZoom(16.0);
  3240. // console.log(data);
  3241. // console.log(data.features[0].geometry.coordinates[0][0][0]);
  3242. // map.getView().animate({
  3243. // // 只设置需要的属性即可
  3244. // center: data.features[0].geometry.coordinates[0][0][0], // 中心点
  3245. // zoom: 16.9, // 缩放级别
  3246. // rotation: undefined, // 缩放完成view视图旋转弧度
  3247. // duration: 1000, // 缩放持续时间,默认不需要设置
  3248. // resolution: Math.random() * 0.00000001,
  3249. // });
  3250. // }
  3251. // })
  3252. // .catch((error) => {
  3253. // console.log("【异常】", error);
  3254. // });
  3255. map.addLayer(cunTc);
  3256. //村边界查询开始 ------------------------------end
  3257. //国有数据加载-----------------------------------start
  3258. deptGetId(that.surveyItem.deptId).then((res) => {
  3259. var cql_filter_guoyou = "ZLDWDM='" + res.data.orgCode + "0000000'";
  3260. var guoyouTc = new ol.layer.Image({
  3261. source: new ol.source.ImageWMS({
  3262. url: that.mapGeoServerUrl + "/geoserver/zjd_gydl/wms",
  3263. params: {
  3264. LAYERS: 'zjd_gydl:DLTB',
  3265. TILED: true,
  3266. cql_filter: cql_filter_guoyou,
  3267. SRID: 3857,
  3268. TIMESTAMP: new Date().getTime(),
  3269. },
  3270. }),
  3271. });
  3272. map.addLayer(guoyouTc);
  3273. });
  3274. //国有数据加载----------------------------------end
  3275. //宅基地图层查询开始 ------------------start
  3276. //var cql_filter_all = "dept_id='" + that.$cookies.get("item").deptId + "'";
  3277. let zjdDdc = new ol.layer.Image({
  3278. source: new ol.source.ImageWMS({
  3279. url: that.mapGeoServerUrl + "/wms",
  3280. params: {
  3281. LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
  3282. TILED: true,
  3283. cql_filter: cql_filter+" and survey_status = '1'",
  3284. SRID: 3857,
  3285. TIMESTAMP: new Date().getTime(),
  3286. },
  3287. }),
  3288. });
  3289. let zjdDcyc = new ol.layer.Image({
  3290. source: new ol.source.ImageWMS({
  3291. url: that.mapGeoServerUrl + "/wms",
  3292. params: {
  3293. LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
  3294. TILED: true,
  3295. cql_filter: cql_filter+" and survey_status = '2'",
  3296. SRID: 3857,
  3297. TIMESTAMP: new Date().getTime(),
  3298. },
  3299. }),
  3300. });
  3301. let zjdDcwc = new ol.layer.Image({
  3302. source: new ol.source.ImageWMS({
  3303. url: that.mapGeoServerUrl + "/wms",
  3304. params: {
  3305. LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
  3306. TILED: true,
  3307. cql_filter: cql_filter+" and survey_status = '3'",
  3308. SRID: 3857,
  3309. TIMESTAMP: new Date().getTime(),
  3310. },
  3311. }),
  3312. });
  3313. let zjdDcbh = new ol.layer.Image({
  3314. source: new ol.source.ImageWMS({
  3315. url: that.mapGeoServerUrl + "/wms",
  3316. params: {
  3317. LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
  3318. TILED: true,
  3319. cql_filter: cql_filter+" and survey_status = '4'",
  3320. SRID: 3857,
  3321. TIMESTAMP: new Date().getTime(),
  3322. },
  3323. }),
  3324. });
  3325. let zjdSptg = new ol.layer.Image({
  3326. source: new ol.source.ImageWMS({
  3327. url: that.mapGeoServerUrl + "/wms",
  3328. params: {
  3329. LAYERS: 'nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey',
  3330. TILED: true,
  3331. cql_filter: cql_filter+" and survey_status = '5'",
  3332. SRID: 3857,
  3333. TIMESTAMP: new Date().getTime(),
  3334. },
  3335. }),
  3336. });
  3337. //定位查询位置
  3338. let param_zjdzd = {
  3339. srsName: "EPSG:3857",
  3340. service: "WFS",
  3341. version: "1.0.0",
  3342. request: "GetFeature",
  3343. typename: "nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey",
  3344. //featureNS: 'nsgk_hc',//命名空间 URI
  3345. cql_filter: cql_filter,
  3346. //featurePrefix: 'nationalwater',//工作区名称
  3347. //featureTypes: ['nationalwater:01fir'],//查询图层,可以是同一个工作区下多个图层,逗号隔开
  3348. outputFormat: "application/json",
  3349. maxFeatures:1,
  3350. //filter: ol.format.filter.equalTo(t,e,r)//前者是属性名,后者是对应值
  3351. };
  3352. let url_zjdzd = that.mapGeoServerUrl + "/wfs"; //wfsurl;
  3353. url_zjdzd = url_zjdzd + "?";
  3354. for (let key in param_zjdzd) {
  3355. url_zjdzd = url_zjdzd + key + "=" + param_zjdzd[key] + "&";
  3356. }
  3357. url_zjdzd = url_zjdzd.substr(0, url_zjdzd.length - 1);
  3358. fetch(url_zjdzd, {
  3359. method: "POST", // *GET, POST, PUT, DELETE, etc.
  3360. })
  3361. .then((res) => {
  3362. var geojsonmap = res.json();
  3363. return geojsonmap;
  3364. })
  3365. .then((data) => {
  3366. if (that.backTheGeom != "" && that.backTheGeom != undefined && that.backTheGeom.substring(0, 1) == "{") {
  3367. //自然幢图层查询开始 ------------------start
  3368. var cql_filter_map = "dept_id='" + that.surveyItem.deptId + "'" + "and zjddm='" + that.mapZjdData.zjddm + "'";
  3369. zrzTc = new ol.layer.Image({
  3370. source: new ol.source.ImageWMS({
  3371. url: that.mapGeoServerUrl + "/wms",
  3372. params: {
  3373. LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
  3374. TILED: true,
  3375. cql_filter: cql_filter_map,
  3376. SRID: 3857,
  3377. TIMESTAMP: new Date().getTime(),
  3378. },
  3379. }),
  3380. });
  3381. map.addLayer(zrzTc);
  3382. //自然幢图层查询开始 ------------------start
  3383. //附属设施图层查询开始 ------------------start
  3384. //var cql_filter_map = "dept_id='" + that.$cookies.get("item").deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  3385. fsssTc = new ol.layer.Image({
  3386. source: new ol.source.ImageWMS({
  3387. url: that.mapGeoServerUrl + "/wms",
  3388. params: {
  3389. LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
  3390. TILED: true,
  3391. cql_filter: cql_filter_map,
  3392. SRID: 3857,
  3393. TIMESTAMP: new Date().getTime(),
  3394. },
  3395. }),
  3396. });
  3397. map.addLayer(fsssTc);
  3398. //附属设施图层查询开始 ------------------end
  3399. hc_land_on = new ol.layer.Vector({
  3400. title: "add Layer",
  3401. source: new ol.source.Vector({
  3402. projection: projection,
  3403. features: new ol.format.GeoJSON().readFeatures(that.backTheGeom),
  3404. }),
  3405. style: new ol.style.Style({
  3406. stroke: new ol.style.Stroke({
  3407. //边界样式
  3408. color: "#CCFF66",
  3409. width: 6,
  3410. }),
  3411. }),
  3412. });
  3413. map.addLayer(hc_land_on);
  3414. var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  3415. var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  3416. var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  3417. var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  3418. //定位查询位置
  3419. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  3420. that.clickBbox = center;
  3421. console.log(that.mapZjdData);
  3422. that.textMjAll = that.mapZjdData.zdmj;
  3423. map.getView().animate({
  3424. // 只设置需要的属性即可
  3425. center: center, // 中心点
  3426. zoom: 17.9, // 缩放级别
  3427. rotation: undefined, // 缩放完成view视图旋转弧度
  3428. duration: 1000, // 缩放持续时间,默认不需要设置
  3429. resolution: Math.random() * 0.00000001,
  3430. });
  3431. //this.backMap =1;
  3432. } else if (that.backTheGeom != "" && that.backTheGeom != undefined && that.backTheGeom.substring(0, 1) == "[") {
  3433. //that.newHt ="1";
  3434. var zbNew = JSON.stringify({
  3435. "type": "MultiPolygon",
  3436. "coordinates": [that.backTheGeom.replaceAll("\"", "")]
  3437. });
  3438. var leftJoin = zbNew.replace("\"[", "[");
  3439. var rightJoin = leftJoin.replace("\"]", "]");
  3440. hc_land_on = new ol.layer.Vector({
  3441. title: "add Layer",
  3442. source: new ol.source.Vector({
  3443. projection: projection,
  3444. features: new ol.format.GeoJSON().readFeatures("{\n" +
  3445. " \"type\": \"Feature\",\n" +
  3446. " \"geometry\":" + rightJoin + "}"),
  3447. }),
  3448. style: new ol.style.Style({
  3449. fill: new ol.style.Fill({
  3450. //矢量图层填充颜色,以及透明度
  3451. color: "rgba(204, 255, 204,0.3)",
  3452. }),
  3453. stroke: new ol.style.Stroke({
  3454. //边界样式
  3455. color: "#CCFF66",
  3456. width: 3,
  3457. }),
  3458. }),
  3459. });
  3460. map.addLayer(hc_land_on);
  3461. var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  3462. var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  3463. var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  3464. var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  3465. //定位查询位置
  3466. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  3467. that.clickBbox = center;
  3468. that.textMjAll = that.mapZjdData.zdmj;
  3469. map.getView().animate({
  3470. // 只设置需要的属性即可
  3471. center: center, // 中心点
  3472. zoom: 16.9, // 缩放级别
  3473. rotation: undefined, // 缩放完成view视图旋转弧度
  3474. duration: 1000, // 缩放持续时间,默认不需要设置
  3475. resolution: Math.random() * 0.00000001,
  3476. });
  3477. //this.backMap =1;
  3478. } else {
  3479. //通过村界大小视图显示
  3480. // let resolution = map.getView().getResolutionForExtent(data.bbox, map.getSize());
  3481. // resolution:resolution + Math.random() * 0.00000001,
  3482. // map.getView().fit(data.bbox);
  3483. // map.getView().setResolution(resolution);
  3484. // //初始视图大小控制
  3485. // map.getView().setZoom(16.0);
  3486. map.getView().animate({
  3487. // 只设置需要的属性即可
  3488. center: data.features[0].geometry.coordinates[0][0][0], // 中心点
  3489. zoom: 15.9, // 缩放级别
  3490. rotation: undefined, // 缩放完成view视图旋转弧度
  3491. duration: 1000, // 缩放持续时间,默认不需要设置
  3492. resolution: Math.random() * 0.00000001,
  3493. });
  3494. }
  3495. })
  3496. .catch((error) => {
  3497. console.log("【异常】", error);
  3498. });
  3499. //宅基地图层查询开始 ------------------start
  3500. var zrzTc;
  3501. //自然幢图层查询开始 ------------------start
  3502. zrzTc = new ol.layer.Image({
  3503. source: new ol.source.ImageWMS({
  3504. url: that.mapGeoServerUrl + "/wms",
  3505. params: {
  3506. LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
  3507. TILED: true,
  3508. cql_filter: cql_filter,
  3509. SRID: 3857,
  3510. TIMESTAMP: new Date().getTime(),
  3511. },
  3512. }),
  3513. });
  3514. //自然幢图层查询开始 ------------------start
  3515. var fsssTc;
  3516. // //附属设施图层查询开始 ------------------start
  3517. fsssTc = new ol.layer.Image({
  3518. source: new ol.source.ImageWMS({
  3519. url: that.mapGeoServerUrl + "/wms",
  3520. params: {
  3521. LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
  3522. TILED: true,
  3523. cql_filter: cql_filter,
  3524. SRID: 3857,
  3525. TIMESTAMP: new Date().getTime(),
  3526. },
  3527. }),
  3528. });
  3529. map.addLayer(zjdDdc);
  3530. var Zb;
  3531. var latitude;
  3532. var longitude;
  3533. var vector_drawing;
  3534. //定位定义------------end
  3535. //绘图定义---------------start
  3536. var drawing;
  3537. var draw_map;
  3538. //绘图定义---------------end
  3539. //测面绘图定义------------start
  3540. var draw_cm;
  3541. //定义矢量图层
  3542. var vector;
  3543. //创建一个帮助提示信息对象
  3544. var helpTooltip;
  3545. //创建一个测量提示信息对象
  3546. var measureTooltip;
  3547. //创建一个帮助提示框对象
  3548. var helpTooltipElement;
  3549. //测出距离
  3550. var measureTooltipElement;
  3551. //测面绘图定义-----------end
  3552. //地图操作定义------------end
  3553. //定位当前位置 ------start
  3554. $("#dwMapAll").on("click", function () {
  3555. //删除测量记录操作--------start
  3556. //将矢量图层从图中删除
  3557. map.removeLayer(helpTooltip);
  3558. map.removeLayer(vector);
  3559. map.removeInteraction(draw_cm);
  3560. //map.removeOverlay(helpTooltipElement);
  3561. //map.removeLayer(measureTooltip);
  3562. //删除测量记录操作--------end
  3563. //删除绘制图层画图操作-------start
  3564. map.removeInteraction(draw_map);
  3565. map.removeLayer(drawing);
  3566. //删除绘制图层画图操作-------end
  3567. //开始定位当前位置
  3568. navigator.geolocation.getCurrentPosition(function(position) {
  3569. latitude = position.coords.latitude;// 获取纬度
  3570. longitude = position.coords.longitude;// 获取经度
  3571. });
  3572. if(latitude !=null && longitude !=null && latitude !="" && longitude !="" && latitude !=undefined && longitude !=undefined ){
  3573. Zb = [longitude,latitude];
  3574. }else {
  3575. Zb =[122.115038, 46.086317];
  3576. }
  3577. //获取坐标点LocationManager
  3578. // geoGps().then(response => {
  3579. //
  3580. // });
  3581. //矢量标注样式设置函数,设置image为图标ol.style.Icon
  3582. function createLabelStyle() {
  3583. return new ol.style.Style({
  3584. image: new ol.style.Icon({
  3585. //设置图标偏移
  3586. anchor: [0.5, 1],
  3587. //标注样式的起点位置
  3588. anchorOrigin: "top-right",
  3589. //X方向单位:分数
  3590. anchorXUnits: "fraction",
  3591. //Y方向单位:像素
  3592. anchorYUnits: "pixels",
  3593. //偏移起点位置的方向
  3594. offsetOrigin: "top-right",
  3595. //透明度
  3596. opacity: 0.9,
  3597. //图片路径
  3598. src: require("../../assets/images/housesteadSurvey/mark.png"),
  3599. }),
  3600. text: new ol.style.Text({
  3601. textAlign: "center", //位置
  3602. textBaseline: "middle", //基准线
  3603. font: "normal 12px 微软雅黑", //文字样式
  3604. //text: "标注点", //文本内容
  3605. fill: new ol.style.Fill({
  3606. //文本填充样式(即文字颜色)
  3607. color: "#ff0000",
  3608. }),
  3609. }),
  3610. zIndex: 9999,
  3611. });
  3612. }
  3613. console.info( Zb)
  3614. var newcenterFeature = new ol.Feature({
  3615. geometry: new ol.geom.Point(ol.proj.fromLonLat(Zb)), //几何信息
  3616. name: "标注点",
  3617. });
  3618. var sourceMapLook = new ol.source.Vector({wrapX: false});
  3619. vector_drawing = new ol.layer.Vector({
  3620. source: sourceMapLook,
  3621. });
  3622. map.addLayer(vector_drawing);
  3623. newcenterFeature.setStyle(createLabelStyle()); //设置要素样式
  3624. sourceMapLook.addFeature(newcenterFeature);
  3625. map.getView().animate({
  3626. // 只设置需要的属性即可
  3627. center: ol.proj.fromLonLat(Zb), // 中心点
  3628. zoom: 17.8, // 缩放级别
  3629. rotation: undefined, // 缩放完成view视图旋转弧度
  3630. duration: 1000, // 缩放持续时间,默认不需要设置
  3631. resolution:Math.random() * 0.00000001,
  3632. });
  3633. });
  3634. //定位当前位置 ------end
  3635. //开始绘制图层- -----start
  3636. $("#htMapAll").on("click", function () {
  3637. if(that.drawingClick) {
  3638. that.drawingClick=false;
  3639. //删除之前 测距操作添加map中的绘图 --------start
  3640. //map.removeLayer(helpTooltip);
  3641. map.removeLayer(vector);
  3642. map.removeInteraction(draw_cm);
  3643. //map.removeOverlay(helpTooltipElement);
  3644. map.removeLayer(measureTooltipElement);
  3645. //删除之前 测距操作添加map中的绘图 --------end
  3646. //删除之前画图图层,重新绘制图层
  3647. map.removeInteraction(draw_map);
  3648. map.removeLayer(drawing);
  3649. //var source = new ol.source.Vector({wrapX: false});
  3650. drawing = new ol.layer.Vector({
  3651. source: new ol.source.Vector(),
  3652. });
  3653. map.addLayer(drawing);
  3654. function addInteraction() {
  3655. draw_map = new ol.interaction.Draw({
  3656. source: drawing.getSource(),
  3657. type: "Polygon",
  3658. });
  3659. draw_map.on("drawend", function (evt) {
  3660. var feature = evt.feature;
  3661. var geometry = feature.getGeometry();
  3662. that.coordinate = geometry.getCoordinates();
  3663. //_this.coordinateList = coordinate.toString();
  3664. //提示当前坐标是否绘制完成
  3665. if (that.coordinate != "" && that.coordinate != null) {
  3666. that.showhzht = true;
  3667. let zbNew = JSON.stringify({"type": "MultiPolygon", "coordinates": [JSON.stringify(that.coordinate).replaceAll("\"","")]});
  3668. let leftJoin = zbNew.replace("\"[","[");
  3669. let rightJoin = leftJoin.replace("\"]","]");
  3670. that.htZjdZrzFsss = rightJoin;
  3671. // htMapAllFu();
  3672. } else {
  3673. $("#htMapAll").trigger("click");
  3674. }
  3675. });
  3676. map.addInteraction(draw_map);
  3677. }
  3678. function htMapAllFu() {
  3679. //that.drawMapPolygonFun();
  3680. //绘制多边形地图
  3681. that.$dialog
  3682. .confirm({
  3683. title: "提示",
  3684. message: "是否重新绘制画图",
  3685. })
  3686. .then(() => {
  3687. //$("#drawRemove").trigger("click");
  3688. map.removeInteraction(draw_map);
  3689. that.coordinate = "";
  3690. })
  3691. .catch(() => {
  3692. //删除画图点
  3693. map.removeInteraction(draw_map);
  3694. });
  3695. }
  3696. addInteraction();
  3697. } else {
  3698. that.drawingClick=true;
  3699. //删除之前 测距操作添加map中的绘图 --------start
  3700. //map.removeLayer(helpTooltip);
  3701. map.removeLayer(vector);
  3702. map.removeInteraction(draw_cm);
  3703. //map.removeOverlay(helpTooltipElement);
  3704. map.removeLayer(measureTooltipElement);
  3705. //删除之前 测距操作添加map中的绘图 --------end
  3706. //删除之前画图图层,重新绘制图层
  3707. map.removeInteraction(draw_map);
  3708. map.removeLayer(drawing);
  3709. //var source = new ol.source.Vector({wrapX: false});
  3710. }
  3711. });
  3712. //删除之前绘制图层
  3713. $("#deleteHistory").on("click", function () {
  3714. map.removeLayer(drawing);
  3715. that.showhzht = false;
  3716. });
  3717. //开始绘制图层- -----end
  3718. //切换功能删除之前选中状态
  3719. $("#deleteHistoryMap").on("click", function () {
  3720. map.removeLayer(hc_land_on);
  3721. that.mapZjdData = "";
  3722. that.mapZrzData = "";
  3723. that.mapFsssData = "";
  3724. //that.mapZjdTeAll.active ="1";
  3725. that.mapZjdTeAll.mapZjdAData = {};
  3726. that.mapZjdTeAll.mapZrzAData = {};
  3727. that.mapZjdTeAll.mapFsssAData = {};
  3728. that.mapZjdDataTure = "";
  3729. });
  3730. //清除画图鼠标点击事件
  3731. // $("#drawRemove").click(function () {
  3732. // map.removeLayer(drawing);
  3733. // });
  3734. //
  3735. //地图定义
  3736. var delete_map = ["mapZjd", "mapZrz","mapFsss"];
  3737. var hc_land_queryList =[];
  3738. var texiao_layer_zjd;
  3739. var texiao_layer_zrz;
  3740. var texiao_layer_fsss;
  3741. //按照查询条件人名 定位地图-----------------start
  3742. $("#query").on("click", function () {
  3743. //数据库查询数据------------------------------------------------------start
  3744. $("#deleteHistoryMap").trigger("click");
  3745. var val = that.seachText;
  3746. //删除之前查询图层
  3747. for(var i=0;hc_land_queryList.length>i;i++){
  3748. map.removeLayer(hc_land_queryList[i]);
  3749. }
  3750. hc_land_queryList = [];
  3751. that.mapDataAll =[];
  3752. if (val == "") {
  3753. that.$toast('请填写查询条件再查询');
  3754. } else {
  3755. var styleZjd = new ol.style.Style({
  3756. stroke: new ol.style.Stroke({
  3757. //边界样式
  3758. color: "#CCFF66",
  3759. width: 6,
  3760. }),
  3761. });
  3762. let params;
  3763. if(that.mapAddJumpNum == 1){
  3764. params = {
  3765. "deptId" : that.mapAddJump,
  3766. "shyqrdbxm" : val
  3767. }
  3768. } else {
  3769. params = {
  3770. "deptId" : that.surveyItem.deptId,
  3771. "shyqrdbxm" : val
  3772. }
  3773. }
  3774. listZjdzd(params).then((response) => {
  3775. if(response.rows.length != 0){
  3776. that.mapDataAll = response.rows;
  3777. for(var hg=0; hg < that.mapDataAll.length; hg++){
  3778. var mapNum = that.mapDataAll[hg].surveyStatus;
  3779. if(mapNum == "1"){
  3780. that.mapDataAll[hg].paceType = "未核查";
  3781. } else if (mapNum == "3"){
  3782. that.mapDataAll[hg].paceType = "已核查";
  3783. }else{
  3784. }
  3785. that.mapDataAll[hg].typeTc="宅基地";
  3786. if (that.mapDataAll[hg] !=null && that.mapDataAll[hg].theGeom != null && that.mapDataAll[hg].theGeom != "") {
  3787. that.mapDataAll[hg].createBy = 'mapTheGeomZjdId';
  3788. hc_land_queryList[hg] =new ol.layer.Vector({
  3789. title: "add Layer",
  3790. source: new ol.source.Vector({
  3791. projection: projection,
  3792. features: new ol.format.GeoJSON().readFeatures("{\n" +
  3793. " \"type\": \"Feature\",\n" +
  3794. " \"geometry\":" + that.mapDataAll[hg].theGeomJson + ", \"properties\":" + JSON.stringify(that.mapDataAll[hg]) + "}"),
  3795. }),
  3796. style: styleZjd
  3797. });
  3798. map.addLayer(hc_land_queryList[hg]);
  3799. var maxXMap = hc_land_queryList[hg].values_.source.featuresRtree_.rbush_.data.maxX;
  3800. var maxYMap = hc_land_queryList[hg].values_.source.featuresRtree_.rbush_.data.maxY;
  3801. var minXMap = hc_land_queryList[hg].values_.source.featuresRtree_.rbush_.data.minX;
  3802. var minYMap = hc_land_queryList[hg].values_.source.featuresRtree_.rbush_.data.minY;
  3803. //定位查询位置
  3804. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  3805. map.getView().animate({
  3806. // 只设置需要的属性即可
  3807. center: center, // 中心点
  3808. zoom: 15.8, // 缩放级别
  3809. rotation: undefined, // 缩放完成view视图旋转弧度
  3810. duration: 1000, // 缩放持续时间,默认不需要设置
  3811. resolution:Math.random() * 0.00000001,
  3812. });
  3813. }
  3814. // listFsss(paramsZrz).then((response) => {
  3815. // that.mapDataAll.push(response.rows);
  3816. // });
  3817. }
  3818. // for(var queryFor=0; hc_land_queryList > queryFor; queryFor++ ){
  3819. // map.addLayer(hc_land_queryList[queryFor]);
  3820. // }
  3821. // var mapZrzFor = that.mapDataAll[0].length+1;
  3822. // console.log(mapZrzFor);
  3823. // for(var mapFor=0;mapZrzFor>mapFor;mapFor++){
  3824. // //查询自然幢
  3825. // let paramsZrz = {
  3826. // "deptId" : that.$cookies.get("item").deptId,
  3827. // "zjddm" : that.mapDataAll[0][mapFor].zjddm,
  3828. // "pageSize":20,
  3829. // }
  3830. // listZrz(paramsZrz).then((response) => {
  3831. // console.log(response);
  3832. // that.mapDataAll[0].
  3833. // that.mapDataAll[0].push(response.rows);
  3834. // });
  3835. // }
  3836. setTimeout(function () {
  3837. that.showSearch = true ;
  3838. $('.searchBox').css('display','block')
  3839. var height = $(".searchBar_wrap").outerHeight(true) - $(".searchBar_wrap .van-search").outerHeight(true)
  3840. document.styleSheets[0].insertRule(
  3841. "@keyframes test" +
  3842. "{" +
  3843. "0%{bottom: -" + height + "px;}" +
  3844. "100%{bottom: 0px;}" +
  3845. "}"
  3846. )
  3847. $('.searchBar_wrap').css({'animation':'test 0.5s ease-in-out 0s 1 alternate forwards','-webkit-animation':'test 0.5s ease-in-out 0s 1 alternate forwards'});
  3848. //}
  3849. },500);
  3850. } else {
  3851. that.$toast("暂无数据")
  3852. }
  3853. });
  3854. }
  3855. //数据库查询数据------------------------------------------------------end
  3856. //地图查询------------------------------------------------------------start
  3857. /**
  3858. * @api wfs服务空间查询
  3859. * @param {*} wfsurl
  3860. * @param {*} srsName
  3861. * @param {*} typeName
  3862. * @param {*} drawType
  3863. * @param {option 可选} geometryField
  3864. */
  3865. // var val = that.seachText;
  3866. // if (val == "") {
  3867. // that.$toast('请填写查询条件再查询');
  3868. // } else {
  3869. // //清除之前查询数据
  3870. // that.mapDataAll =[];
  3871. // //分类查询查询农地、农房
  3872. // var difang;
  3873. // //查询条件
  3874. // var cql_filter_cun;
  3875. // var cun = that.$cookies.get("item").deptId;
  3876. // difang = ["zjd_dc:t_house_survey_zjdzd", "nsgk_wulanhaote:t_homespace_zrz","zjd_dc:t_house_survey_fsss"];
  3877. // var tach = 0;
  3878. // var once = 0;
  3879. // for (var i = 0; i < difang.length; i++) {
  3880. // map.removeLayer(delete_map[i]);
  3881. // // 数字验证!
  3882. // var reg = /\d/;
  3883. // //验证汉子
  3884. // //var han = /^[\u4e00-\u9fa5]+$/;
  3885. // if (reg.test(val)) {
  3886. // //循环判断查询条件
  3887. // cql_filter_cun = "zjddm='" + val + "'" + "and dept_id='" + cun + "'";
  3888. // } else {
  3889. // //循环判断查询条件
  3890. // if (difang[i] == "zjd_dc:t_house_survey_zjdzd") {
  3891. // cql_filter_cun = "zjddm='" + val + "'" + "and dept_id='" + cun + "'";
  3892. // } else if(difang[i] == "nsgk_wulanhaote:t_homespace_zrz") {
  3893. // cql_filter_cun = "zjddm='" + val + "'" + "and dept_id='" + cun + "'";
  3894. // } else if(difang[i] == "zjd_dc:t_house_survey_fsss") {
  3895. // cql_filter_cun = "zjddm='" + val + "'" + "and dept_id='" + cun + "'";
  3896. // }
  3897. // }
  3898. // //for(var i=0; i< difang.length; i++){
  3899. // //cql_filter = "CM='"+cun +"'"+ "and XZQK='待流转待盘活'";
  3900. //
  3901. // //图层加载
  3902. //
  3903. // //业务图层 wms服务
  3904. // delete_map[i] = new ol.layer.Tile({
  3905. // source: new ol.source.TileWMS({
  3906. // url: that.mapGeoServerUrl+"/wms",
  3907. // params: {
  3908. // LAYERS: difang[i],
  3909. // //'LAYERS': 'new_shp:new_shp_all',
  3910. // TILED: true,
  3911. // cql_filter: cql_filter_cun,
  3912. // SRID: 3857,
  3913. // },
  3914. // }),
  3915. // });
  3916. //
  3917. // //}
  3918. // //定位查询位置
  3919. // let param_dw = {
  3920. // srsName: "EPSG:3857",
  3921. // service: "WFS",
  3922. // version: "1.0.0",
  3923. // request: "GetFeature",
  3924. // typename: difang[i],
  3925. // //featureNS: 'nsgk_hc',//命名空间 URI
  3926. // cql_filter: cql_filter_cun,
  3927. // //featurePrefix: 'nationalwater',//工作区名称
  3928. // //featureTypes: ['nationalwater:01fir'],//查询图层,可以是同一个工作区下多个图层,逗号隔开
  3929. // outputFormat: "application/json",
  3930. // //filter: ol.format.filter.equalTo(t,e,r)//前者是属性名,后者是对应值
  3931. // };
  3932. // let url_dw = that.mapGeoServerUrl+"/wfs"; //wfsurl;
  3933. // url_dw = url_dw + "?";
  3934. // for (let key in param_dw) {
  3935. // url_dw = url_dw + key + "=" + param_dw[key] + "&";
  3936. // }
  3937. // url_dw = url_dw.substr(0, url_dw.length - 1);
  3938. // fetch(url_dw, {
  3939. // method: "POST", // *GET, POST, PUT, DELETE, etc.
  3940. // })
  3941. // .then((res) => {
  3942. // var geojsonmap = res.json();
  3943. // return geojsonmap;
  3944. // })
  3945. // .then((data) => {
  3946. // tach = tach + 1;
  3947. // if (data.features != null && data.features != "") {
  3948. // for(var i=0; data.features.length >i; i++) {
  3949. // //特效动画实现 -----------------------------start
  3950. // console.log(tach,"++++++++++++++++++",once)
  3951. // var datamap = data.features[0].bbox;
  3952. // if (tach == 1 && once == 0) {
  3953. // console.log("zrz")
  3954. // texiao_layer_zjd = new ol.layer.Vector({
  3955. // source: new ol.source.Vector(),
  3956. // });
  3957. // map.addLayer(texiao_layer_zjd);
  3958. // var center = ol.extent.getCenter(datamap); //获取边界区域的中心位置
  3959. // var circle = new ol.Feature({
  3960. // geometry: new ol.geom.Point(center), //ol.proj.transform([104, 30], 'EPSG:4326', 'EPSG:3857') //投影坐标转为地理坐标
  3961. // });
  3962. //
  3963. // circle.setStyle(
  3964. // new ol.style.Style({
  3965. // image: new ol.style.Circle({
  3966. // radius: 0,
  3967. // stroke: new ol.style.Stroke({
  3968. // color: "yellow",
  3969. // size: 1,
  3970. // }),
  3971. // }),
  3972. // })
  3973. // );
  3974. // texiao_layer_zjd.getSource().addFeature(circle);
  3975. //
  3976. // // 关键的地方在此:监听postcompose事件,在里面重新设置circle的样式
  3977. // var radius = 0;
  3978. // map.on("postcompose", function () {
  3979. // // 增大半径,最大20
  3980. // radius++;
  3981. // radius = radius % 10;
  3982. // // 设置样式
  3983. // circle.setStyle(
  3984. // new ol.style.Style({
  3985. // image: new ol.style.Circle({
  3986. // radius: radius,
  3987. // stroke: new ol.style.Stroke({
  3988. // color: "yellow",
  3989. // size: 1,
  3990. // }),
  3991. // }),
  3992. // })
  3993. // );
  3994. // });
  3995. // } else if(tach == 2) {
  3996. // console.log("zrz")
  3997. // texiao_layer_zrz = new ol.layer.Vector({
  3998. // source: new ol.source.Vector(),
  3999. // });
  4000. // map.addLayer(texiao_layer_zrz);
  4001. // var center = ol.extent.getCenter(datamap); //获取边界区域的中心位置
  4002. // var circle = new ol.Feature({
  4003. // geometry: new ol.geom.Point(center), //ol.proj.transform([104, 30], 'EPSG:4326', 'EPSG:3857') //投影坐标转为地理坐标
  4004. // });
  4005. //
  4006. // circle.setStyle(
  4007. // new ol.style.Style({
  4008. // image: new ol.style.Circle({
  4009. // radius: 0,
  4010. // stroke: new ol.style.Stroke({
  4011. // color: "yellow",
  4012. // size: 1,
  4013. // }),
  4014. // }),
  4015. // })
  4016. // );
  4017. // texiao_layer_zrz.getSource().addFeature(circle);
  4018. //
  4019. // // 关键的地方在此:监听postcompose事件,在里面重新设置circle的样式
  4020. // var radius = 0;
  4021. // map.on("postcompose", function () {
  4022. // // 增大半径,最大20
  4023. // radius++;
  4024. // radius = radius % 10;
  4025. // // 设置样式
  4026. // circle.setStyle(
  4027. // new ol.style.Style({
  4028. // image: new ol.style.Circle({
  4029. // radius: radius,
  4030. // stroke: new ol.style.Stroke({
  4031. // color: "yellow",
  4032. // size: 1,
  4033. // }),
  4034. // }),
  4035. // })
  4036. // );
  4037. // });
  4038. // } else {
  4039. // console.log("fsss")
  4040. // texiao_layer_fsss = new ol.layer.Vector({
  4041. // source: new ol.source.Vector(),
  4042. // });
  4043. // map.addLayer(texiao_layer_fsss);
  4044. // var center = ol.extent.getCenter(datamap); //获取边界区域的中心位置
  4045. // var circle = new ol.Feature({
  4046. // geometry: new ol.geom.Point(center), //ol.proj.transform([104, 30], 'EPSG:4326', 'EPSG:3857') //投影坐标转为地理坐标
  4047. // });
  4048. //
  4049. // circle.setStyle(
  4050. // new ol.style.Style({
  4051. // image: new ol.style.Circle({
  4052. // radius: 0,
  4053. // stroke: new ol.style.Stroke({
  4054. // color: "yellow",
  4055. // size: 1,
  4056. // }),
  4057. // }),
  4058. // })
  4059. // );
  4060. // texiao_layer_fsss.getSource().addFeature(circle);
  4061. //
  4062. // // 关键的地方在此:监听postcompose事件,在里面重新设置circle的样式
  4063. // var radius = 0;
  4064. // map.on("postcompose", function () {
  4065. // // 增大半径,最大20
  4066. // radius++;
  4067. // radius = radius % 10;
  4068. // // 设置样式
  4069. // circle.setStyle(
  4070. // new ol.style.Style({
  4071. // image: new ol.style.Circle({
  4072. // radius: radius,
  4073. // stroke: new ol.style.Stroke({
  4074. // color: "yellow",
  4075. // size: 1,
  4076. // }),
  4077. // }),
  4078. // })
  4079. // );
  4080. // });
  4081. // }
  4082. // //特效动画实现 -----------------------------end
  4083. // that.mapDataAll.push(JSON.parse(JSON.stringify(data.features[i].properties)));
  4084. // }
  4085. // //定位实现
  4086. // let resolution = map.getView().getResolutionForExtent(data.bbox, map.getSize());
  4087. // map.getView().fit(data.bbox);
  4088. // map.getView().setResolution(resolution);
  4089. // console.log(that.mapDataAll);
  4090. // } else if (tach == 1) {
  4091. // once = once + 1;
  4092. // } else {
  4093. // if (once == 1 && tach == 3) {
  4094. // that.$toast("没有找到相关人员信息");
  4095. // //that.showSearch = false ;
  4096. // }else {
  4097. //
  4098. // }
  4099. // }
  4100. // })
  4101. // .catch((error) => {
  4102. // console.log("【异常】", error);
  4103. // });
  4104. // map.addLayer(delete_map[i]);
  4105. // }
  4106. //地图查询------------------------------------------------------------end
  4107. });
  4108. //按照查询 定位地图-----------------end
  4109. //筛选附属设施-----------------------------------start
  4110. $("#fsssSx").click(function (e) {
  4111. if(e.delegateTarget.ariaChecked === "false"){
  4112. map.addLayer(fsssTc);
  4113. that.fsssSx = true;
  4114. }else{
  4115. map.removeLayer(fsssTc);
  4116. that.fsssSx = false;
  4117. }
  4118. });
  4119. $("#zrzSx").click(function (e) {
  4120. if(e.delegateTarget.ariaChecked === "false"){
  4121. map.addLayer(zrzTc);
  4122. that.zrzSx = true;
  4123. }else{
  4124. map.removeLayer(zrzTc);
  4125. that.zrzSx = false;
  4126. }
  4127. });
  4128. $("#zjdDdc").click(function (e) {
  4129. if(e.delegateTarget.ariaChecked === "false"){
  4130. map.addLayer(zjdDdc);
  4131. that.zjdDdc = true;
  4132. }else{
  4133. map.removeLayer(zjdDdc);
  4134. that.zjdDdc = false;
  4135. }
  4136. });
  4137. $("#zjdDcyc").click(function (e) {
  4138. if(e.delegateTarget.ariaChecked === "false"){
  4139. map.addLayer(zjdDcyc);
  4140. that.zjdDcyc = true;
  4141. }else{
  4142. map.removeLayer(zjdDcyc);
  4143. that.zjdDcyc = false;
  4144. }
  4145. });
  4146. $("#zjdDcwc").click(function (e) {
  4147. if(e.delegateTarget.ariaChecked === "false"){
  4148. map.addLayer(zjdDcwc);
  4149. that.zjdDcwc = true;
  4150. }else{
  4151. map.removeLayer(zjdDcwc);
  4152. that.zjdDcwc = false;
  4153. }
  4154. });
  4155. $("#zjdDcbh").click(function (e) {
  4156. if(e.delegateTarget.ariaChecked === "false"){
  4157. map.addLayer(zjdDcbh);
  4158. that.zjdDcbh = true;
  4159. }else{
  4160. map.removeLayer(zjdDcbh);
  4161. that.zjdDcbh = false;
  4162. }
  4163. });
  4164. $("#zjdSptg").click(function (e) {
  4165. if(e.delegateTarget.ariaChecked === "false"){
  4166. map.addLayer(zjdSptg);
  4167. that.zjdSptg = true;
  4168. }else {
  4169. map.removeLayer(zjdSptg);
  4170. that.zjdSptg = false;
  4171. }
  4172. });
  4173. $("#checkAll").click(function () {
  4174. if(!that.checkAllFlag){
  4175. if(!that.fsssSx){
  4176. map.addLayer(fsssTc);
  4177. }
  4178. if(!that.zrzSx){
  4179. map.addLayer(zrzTc);
  4180. }
  4181. if(!that.zjdDdc){
  4182. map.addLayer(zjdDdc);
  4183. }
  4184. if(!that.zjdDcyc){
  4185. map.addLayer(zjdDcyc);
  4186. }
  4187. if(!that.zjdDcwc){
  4188. map.addLayer(zjdDcwc);
  4189. }
  4190. if(!that.zjdDcbh){
  4191. map.addLayer(zjdDcbh);
  4192. }
  4193. if(!that.zjdSptg){
  4194. map.addLayer(zjdSptg);
  4195. }
  4196. }else{
  4197. that.zjdDdc = false;
  4198. map.removeLayer(zrzTc);
  4199. map.removeLayer(zjdDdc);
  4200. map.removeLayer(zjdDcyc);
  4201. map.removeLayer(zjdDcwc);
  4202. map.removeLayer(zjdDcbh);
  4203. map.removeLayer(zjdSptg);
  4204. map.removeLayer(fsssTc);
  4205. }
  4206. // console.info(that.fsssSx);
  4207. // if(!that.fsssSx && !that.zjdDdc && !that.zjdDcyc && !that.zjdDcwc && !that.zjdDcbh && !that.zjdSptg && !that.zrzSx){
  4208. // map.addLayer(zjdDdc);
  4209. // map.addLayer(zjdDcyc);
  4210. // map.addLayer(zjdDcwc);
  4211. // map.addLayer(zjdDcbh);
  4212. // map.addLayer(zjdSptg);
  4213. // map.addLayer(zrzTc);
  4214. // map.addLayer(fsssTc);
  4215. // that.fsssSx = true;
  4216. // that.zjdDdc = true;
  4217. // that.zjdDcyc = true;
  4218. // that.zjdDcwc = true;
  4219. // that.zjdDcbh = true;
  4220. // that.zjdSptg = true;
  4221. // that.zrzSx = true;
  4222. // }else {
  4223. // map.removeLayer(zrzTc);
  4224. // map.removeLayer(zjdDdc);
  4225. // map.removeLayer(zjdDcyc);
  4226. // map.removeLayer(zjdDcwc);
  4227. // map.removeLayer(zjdDcbh);
  4228. // map.removeLayer(zjdSptg);
  4229. // map.removeLayer(fsssTc);
  4230. // that.fsssSx = false;
  4231. // that.zjdDdc = false;
  4232. // that.zjdDcyc = false;
  4233. // that.zjdDcwc = false;
  4234. // that.zjdDcbh = false;
  4235. // that.zjdSptg = false;
  4236. // that.zrzSx = false;
  4237. // }
  4238. });
  4239. //筛选附属设施-----------------------------------end
  4240. // //获取类型开始 侧面-----------------------------------------------------------------start
  4241. //样式加载定义
  4242. var vector_drawing_delete;
  4243. $("#area").click(function () {
  4244. console.log(that.textMjAll);
  4245. console.log(that.clickBbox);
  4246. if(that.textMjAll ==null || that.textMjAll ==""){
  4247. that.textMjAll =0;
  4248. }
  4249. if((that.textMjAll != "" && that.clickBbox !="") || (that.textMjAll == 0 && that.clickBbox !="")){
  4250. map.removeLayer(vector_drawing_delete);
  4251. function createLabelStyle() {
  4252. return new ol.style.Style({
  4253. text: new ol.style.Text({
  4254. text: that.textMjAll+"㎡",
  4255. textAlign: "center", //位置
  4256. textBaseline: "middle", //基准线
  4257. font: "normal 12px 微软雅黑", //文字样式
  4258. //text: "标注点", //文本内容
  4259. fill: new ol.style.Fill({
  4260. //文本填充样式(即文字颜色)
  4261. color: "#FFFFFF",
  4262. width: 10,
  4263. }),
  4264. overflow: false //超出面的部分不显示
  4265. }),
  4266. zIndex: 9999,
  4267. });
  4268. }
  4269. var newcenterFeature = new ol.Feature({
  4270. geometry: new ol.geom.Point(that.clickBbox), //几何信息
  4271. //name: "标注点",
  4272. });
  4273. var sourceMapLook = new ol.source.Vector({wrapX: false});
  4274. vector_drawing_delete = new ol.layer.Vector({
  4275. source: sourceMapLook,
  4276. });
  4277. map.addLayer(vector_drawing_delete);
  4278. newcenterFeature.setStyle(createLabelStyle()); //设置要素样式
  4279. sourceMapLook.addFeature(newcenterFeature);
  4280. //map.addLayer(styleFsss);
  4281. } else if(that.textMjAllNum == "1"){
  4282. that.$toast("该图层面积暂无信息");
  4283. } else {
  4284. that.$toast("选择图层进行面积显示");
  4285. }
  4286. });
  4287. // $("#area").click(function () {
  4288. // console.log("进入测面")
  4289. // //删除绘制图层画图操作-------start
  4290. // map.removeInteraction(draw_map);
  4291. // map.removeLayer(drawing);
  4292. // //删除绘制图层画图操作-------end
  4293. // //开始绘制 测面--------------------------------------------------------------start
  4294. // //定义矢量数据源
  4295. // var source = new ol.source.Vector();
  4296. //
  4297. // vector = new ol.layer.Vector({
  4298. // source: source,
  4299. // style: new ol.style.Style({
  4300. // fill: new ol.style.Fill({
  4301. // color: "rgba(255,255,255,0.2)",
  4302. // }),
  4303. // stroke: new ol.style.Stroke({
  4304. // color: "#e21e0a",
  4305. // width: 2,
  4306. // }),
  4307. // //image: new ol.style.Circle({
  4308. // // radius: 7,
  4309. // // fill: new ol.style.Fill({
  4310. // // color:'#ffcc33'
  4311. // // })
  4312. // //})
  4313. // }),
  4314. // });
  4315. //
  4316. // //将矢量图层添加到地图中 线的颜色加入map中
  4317. // map.addLayer(vector);
  4318. //
  4319. // var sketch;
  4320. //
  4321. // var continuePolygonMsg = "单击以继续绘制多边形";
  4322. //
  4323. // /**
  4324. // * Message to show when the user is drawing a line.
  4325. // * @type {string}
  4326. // */
  4327. // //var continueLineMsg = '单击继续绘制直线';
  4328. //
  4329. // //鼠标移动触发的函数
  4330. // var pointerMoveHandler = function (evt) {
  4331. // //Indicates if the map is currently being dragged.
  4332. // //Only set for POINTERDRAG and POINTERMOVE events. Default is false.
  4333. // //如果是平移地图则直接结束
  4334. // if (evt.dragging) {
  4335. // return;
  4336. // }
  4337. // //帮助提示信息
  4338. // var helpMsg = "单击开始绘图";
  4339. //
  4340. // if (sketch) {
  4341. // //Get the feature's default geometry.
  4342. // //A feature may have any number of named geometries.
  4343. // //获取绘图对象的几何要素
  4344. // var geom = sketch.getGeometry();
  4345. // //如果当前绘制的几何要素是多边形,则将绘制提示信息设置为多边形绘制提示信息
  4346. // //如果当前绘制的几何要素是多线段,则将绘制提示信息设置为多线段绘制提示信息
  4347. // helpMsg = continuePolygonMsg;
  4348. // }
  4349. // //设置帮助提示要素的内标签为帮助提示信息
  4350. // helpTooltipElement.innerHTML = helpMsg;
  4351. // //设置帮助提示信息的位置
  4352. // //The coordinate in view projection corresponding to the original browser event.
  4353. // helpTooltip.setPosition(evt.coordinate);
  4354. // //移除帮助提示要素的隐藏样式
  4355. // $(helpTooltipElement).removeClass("hidden");
  4356. // };
  4357. //
  4358. // map.on("pointermove", pointerMoveHandler);
  4359. //
  4360. // map.getViewport().addEventListener("mouseout", function () {
  4361. // helpTooltipElement.classList.add("hidden");
  4362. // });
  4363. //
  4364. // //添加交互式绘图对象的函数
  4365. // function addInteraction() {
  4366. // // 获取当前选择的绘制类型
  4367. // //var type = typeSelect.value == 'length' ? 'Polygon' : 'LineString';
  4368. // //创建一个交互式绘图对象
  4369. // var type = "Polygon";
  4370. // draw_cm = new ol.interaction.Draw({
  4371. // //绘制的数据源
  4372. // source: source,
  4373. // //绘制类型
  4374. // type: type,
  4375. // //样式
  4376. // style: new ol.style.Style({
  4377. // fill: new ol.style.Fill({
  4378. // color: "rgba(255,255,255,0.2)",
  4379. // }),
  4380. // stroke: new ol.style.Stroke({
  4381. // color: "rgba(0,0,0,0.5)",
  4382. // lineDash: [10, 10],
  4383. // width: 2,
  4384. // }),
  4385. // // image: new ol.style.Circle({
  4386. // // radius: 5,
  4387. // // stroke: new ol.style.Stroke({
  4388. // // color:'rgba(0,0,0,0.7)'
  4389. // // }),
  4390. // // fill: new ol.style.Fill({
  4391. // //color: 'rgba(255,255,255,0.2)'
  4392. // // })
  4393. // //})
  4394. // }),
  4395. // });
  4396. // //将交互绘图对象添加到地图中
  4397. // map.addInteraction(draw_cm);
  4398. //
  4399. // //创建测量提示框
  4400. // createMeasureTooltip();
  4401. // //创建帮助提示框
  4402. // createHelpTooltip();
  4403. //
  4404. // //定义一个事件监听
  4405. // var listener;
  4406. // //定义一个控制鼠标点击次数的变量
  4407. // var count = 0;
  4408. // //绘制开始事件
  4409. // draw_cm.on(
  4410. // "drawstart",
  4411. // function (evt) {
  4412. // //The feature being drawn.
  4413. // sketch = evt.feature;
  4414. // //提示框的坐标
  4415. // var tooltipCoord = evt.coordinate;
  4416. // //监听几何要素的change事件
  4417. // //Increases the revision counter and dispatches a 'change' event.
  4418. //
  4419. // listener = sketch.getGeometry().on("change", function (evt) {
  4420. // //The event target.
  4421. // //获取绘制的几何对象
  4422. // var geom = evt.target;
  4423. // //定义一个输出对象,用于记录面积和长度
  4424. // var output;
  4425. // map.removeEventListener("singleclick");
  4426. // map.removeEventListener("dblclick");
  4427. // //输出多边形的面积
  4428. // output = formatArea(geom);
  4429. // //Return an interior point of the polygon.
  4430. // //获取多变形内部点的坐标
  4431. // tooltipCoord = geom.getInteriorPoint().getCoordinates();
  4432. //
  4433. // //设置测量提示框的内标签为最终输出结果
  4434. // measureTooltipElement.innerHTML = output;
  4435. // //设置测量提示信息的位置坐标
  4436. // measureTooltip.setPosition(tooltipCoord);
  4437. // });
  4438. //
  4439. // //地图单击事件
  4440. // map.on("singleclick", function (evt) {
  4441. // //设置测量提示信息的位置坐标,用来确定鼠标点击后测量提示框的位置
  4442. // measureTooltip.setPosition(evt.coordinate);
  4443. // //如果是第一次点击,则设置测量提示框的文本内容为起点
  4444. // if (count == 0) {
  4445. // measureTooltipElement.innerHTML = "起点";
  4446. // }
  4447. // //根据鼠标点击位置生成一个点
  4448. // var point = new ol.geom.Point(evt.coordinate);
  4449. // //将该点要素添加到矢量数据源中
  4450. // source.addFeature(new ol.Feature(point));
  4451. // //更改测量提示框的样式,使测量提示框可见
  4452. // measureTooltipElement.className = "tooltip tooltip-static";
  4453. // //创建测量提示框
  4454. // createMeasureTooltip();
  4455. // //点击次数增加
  4456. // count++;
  4457. // });
  4458. //
  4459. // //地图双击事件
  4460. // map.on("dblclick", function (evt) {
  4461. // //根据
  4462. // var point = new ol.geom.Point(evt.coordinate);
  4463. // source.addFeature(new ol.Feature(point));
  4464. // });
  4465. // },
  4466. // this
  4467. // );
  4468. // //绘制结束事件
  4469. // draw_cm.on(
  4470. // "drawend",
  4471. // function (evt) {
  4472. // count = 0;
  4473. // //设置测量提示框的样式
  4474. // measureTooltipElement.className = "tooltip tooltip-static";
  4475. // //Set the offset for this overlay.
  4476. // //设置偏移量
  4477. // measureTooltip.setOffset([0, -7]);
  4478. // //清空绘制要素
  4479. // sketch = null;
  4480. // //清空测量提示要素
  4481. // measureTooltipElement = null;
  4482. // //创建测量提示框
  4483. // createMeasureTooltip();
  4484. // //Removes an event listener using the key returned by on() or once().
  4485. // //移除事件监听
  4486. // ol.Observable.unByKey(listener);
  4487. // //移除地图单击事件
  4488. // map.removeEventListener("singleclick");
  4489. // },
  4490. // this
  4491. // );
  4492. // }
  4493. // /**
  4494. // * Creates a new help tooltip
  4495. // */
  4496. // function createHelpTooltip() {
  4497. // if (helpTooltipElement) {
  4498. // helpTooltipElement.parentNode.removeChild(helpTooltipElement);
  4499. // }
  4500. // helpTooltipElement = document.createElement("div");
  4501. // helpTooltipElement.className = "ol-tooltip hidden";
  4502. // helpTooltip = new ol.Overlay({
  4503. // element: helpTooltipElement,
  4504. // offset: [15, 0],
  4505. // positioning: "center-left",
  4506. // });
  4507. // map.addOverlay(helpTooltip);
  4508. // }
  4509. //
  4510. // /**
  4511. // * Creates a new measure tooltip
  4512. // */
  4513. // function createMeasureTooltip() {
  4514. // if (measureTooltipElement) {
  4515. // measureTooltipElement.parentNode.removeChild(measureTooltipElement);
  4516. // }
  4517. // measureTooltipElement = document.createElement("div");
  4518. // measureTooltipElement.className = "ol-tooltip ol-tooltip-measure";
  4519. // measureTooltip = new ol.Overlay({
  4520. // element: measureTooltipElement,
  4521. // offset: [0, -15],
  4522. // positioning: "bottom-center",
  4523. // });
  4524. // map.addOverlay(measureTooltip);
  4525. // }
  4526. //
  4527. // //格式化测量面积
  4528. // var formatArea = function (polygon) {
  4529. // //定义面积变量
  4530. // var area;
  4531. // //获取平面面积
  4532. // area = polygon.getArea();
  4533. // //定义输出变量
  4534. // var output;
  4535. // //当面积大于10000时,转换为平方千米,否则为平方米
  4536. // if (area > 10000) {
  4537. // output =
  4538. // Math.round((area / 1000000) * 100) / 100 + " " + "km<sup>2</sup>";
  4539. // } else {
  4540. // output = Math.round(area * 100) / 100 + " " + "m<sup>2</sup>";
  4541. // }
  4542. // return output;
  4543. // };
  4544. //
  4545. // addInteraction();
  4546. // });
  4547. // //侧面结束-----------------------------------------------------------------end
  4548. //全图展示-----------------start
  4549. $("#mapAllQt").click(function (){
  4550. //定位查询位置
  4551. let param_dw = {
  4552. srsName: "EPSG:3857",
  4553. service: "WFS",
  4554. version: "1.0.0",
  4555. request: "GetFeature",
  4556. typename: "nsgk_wulanhaote:t_homespace_cjqy",
  4557. //featureNS: 'nsgk_hc',//命名空间 URI
  4558. cql_filter: cql_filter,
  4559. //featurePrefix: 'nationalwater',//工作区名称
  4560. //featureTypes: ['nationalwater:01fir'],//查询图层,可以是同一个工作区下多个图层,逗号隔开
  4561. outputFormat: "application/json",
  4562. //filter: ol.format.filter.equalTo(t,e,r)//前者是属性名,后者是对应值
  4563. };
  4564. let url_dw = that.mapGeoServerUrl+"/wfs"; //wfsurl;
  4565. url_dw = url_dw + "?";
  4566. for (let key in param_dw) {
  4567. url_dw = url_dw + key + "=" + param_dw[key] + "&";
  4568. }
  4569. url_dw = url_dw.substr(0, url_dw.length - 1);
  4570. fetch(url_dw, {
  4571. method: "POST", // *GET, POST, PUT, DELETE, etc.
  4572. })
  4573. .then((res) => {
  4574. var geojsonmap = res.json();
  4575. return geojsonmap;
  4576. })
  4577. .then((data) => {
  4578. let resolution = map.getView().getResolutionForExtent(data.bbox,map.getSize());
  4579. resolution:resolution + Math.random() * 0.00000001,
  4580. map.getView().fit(data.bbox);
  4581. map.getView().setResolution(resolution);
  4582. // var datamap = data.bbox;
  4583. // var center = ol.extent.getCenter(datamap);
  4584. // map.getView().animate({
  4585. // // 只设置需要的属性即可
  4586. // center: center, // 中心点
  4587. // rotation: undefined, // 缩放完成view视图旋转弧度
  4588. // });
  4589. })
  4590. .catch((error) => {
  4591. console.log("【异常】", error);
  4592. });
  4593. });
  4594. //业务图层 wfs服务 属性查询开始 ------------------start
  4595. /**
  4596. * @api wfs服务空间查询
  4597. * @param {*} wfsurl
  4598. * @param {*} srsName
  4599. * @param {*} typeName
  4600. * @param {*} drawType
  4601. * @param {option 可选} geometryField
  4602. */
  4603. //查询全部图层 -------查询叠加图层出现覆盖问题
  4604. var wmsSource = new ol.source.TileWMS({
  4605. url: that.mapGeoServerUrl+"/wms",
  4606. params: {
  4607. LAYERS: "nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey",
  4608. TILED: true,
  4609. SRID: 3857,
  4610. serverType: "geoserver",
  4611. crossOrigin: "anonymous",
  4612. },
  4613. resolution:Math.random() * 0.00000001,
  4614. });
  4615. //查询宅基地图层
  4616. var ZjdwmsSource = new ol.source.TileWMS({
  4617. url: that.mapGeoServerUrl+"/wms",
  4618. params: {
  4619. LAYERS: "nsgk_wulanhaote:t_homestead_zjdzdxx_mobile_survey",
  4620. TILED: true,
  4621. SRID: 3857,
  4622. serverType: "geoserver",
  4623. crossOrigin: "anonymous",
  4624. },
  4625. resolution:Math.random() * 0.00000001,
  4626. });
  4627. //查询自然幢图层
  4628. var ZrzwmsSource = new ol.source.TileWMS({
  4629. url: that.mapGeoServerUrl+"/wms",
  4630. params: {
  4631. LAYERS: "nsgk_wulanhaote:t_homespace_zrz",
  4632. TILED: true,
  4633. SRID: 3857,
  4634. serverType: "geoserver",
  4635. crossOrigin: "anonymous",
  4636. },
  4637. resolution:Math.random() * 0.00000001,
  4638. });
  4639. //查询附属设施图层
  4640. var FssswmsSource = new ol.source.TileWMS({
  4641. url: that.mapGeoServerUrl+"/wms",
  4642. params: {
  4643. LAYERS: "nsgk_wulanhaote:t_homestead_fsss",
  4644. TILED: true,
  4645. SRID: 3857,
  4646. serverType: "geoserver",
  4647. crossOrigin: "anonymous",
  4648. },
  4649. resolution:Math.random() * 0.00000001,
  4650. });
  4651. map.on("pointermove", function (evt) {
  4652. if (evt.dragging) {
  4653. return;
  4654. }
  4655. var pixel = map.getEventPixel(evt.originalEvent);
  4656. var hit = map.forEachLayerAtPixel(pixel, function () {
  4657. return true;
  4658. });
  4659. map.getTargetElement().style.cursor = hit ? "pointer" : "";
  4660. });
  4661. //属性查询结束 ------------------end
  4662. //点击查询详细信息
  4663. map.on("singleclick", function (evt) {
  4664. console.log(evt);
  4665. let feature = map.forEachFeatureAtPixel(
  4666. evt.pixel,
  4667. (feature) => feature
  4668. );
  4669. var viewResolution = map.getView().getResolution(); ///** @type {number} */ (view.getResolution());
  4670. var zb = evt.coordinate;
  4671. var url;
  4672. var url_bbox;
  4673. that.clickBbox ="";
  4674. that.textMjAll = "";
  4675. if(that.drawingClick) {
  4676. //点击空白删除之前图层
  4677. map.removeLayer(hc_land_on);
  4678. //map.removeLayer(hc_land_query);
  4679. //for(var i=0;hc_land_query>i;i++){
  4680. //map.removeLayer(hc_land_query);
  4681. for(var i=0;hc_land_queryList.length>i;i++){
  4682. map.removeLayer(hc_land_queryList[i]);
  4683. }
  4684. //}c
  4685. if (that.fsssSx && that.zjdSx && that.zrzSx) {
  4686. url = wmsSource.getFeatureInfoUrl(
  4687. evt.coordinate,
  4688. viewResolution,
  4689. "EPSG:3857",
  4690. {INFO_FORMAT: "text/html"}
  4691. );
  4692. url_bbox = wmsSource.getFeatureInfoUrl(
  4693. evt.coordinate,
  4694. viewResolution,
  4695. "EPSG:3857",
  4696. {INFO_FORMAT: "application/json"}
  4697. );
  4698. } else {
  4699. if (that.zjdSx) {
  4700. url = ZjdwmsSource.getFeatureInfoUrl(
  4701. evt.coordinate,
  4702. viewResolution,
  4703. "EPSG:3857",
  4704. {INFO_FORMAT: "text/html"}
  4705. );
  4706. url_bbox = ZjdwmsSource.getFeatureInfoUrl(
  4707. evt.coordinate,
  4708. viewResolution,
  4709. "EPSG:3857",
  4710. {INFO_FORMAT: "application/json"}
  4711. );
  4712. } else if (that.fsssSx) {
  4713. url = FssswmsSource.getFeatureInfoUrl(
  4714. evt.coordinate,
  4715. viewResolution,
  4716. "EPSG:3857",
  4717. {INFO_FORMAT: "text/html"}
  4718. );
  4719. url_bbox = FssswmsSource.getFeatureInfoUrl(
  4720. evt.coordinate,
  4721. viewResolution,
  4722. "EPSG:3857",
  4723. {INFO_FORMAT: "application/json"}
  4724. );
  4725. } else if (that.zrzSx) {
  4726. url = ZrzwmsSource.getFeatureInfoUrl(
  4727. evt.coordinate,
  4728. viewResolution,
  4729. "EPSG:3857",
  4730. {INFO_FORMAT: "text/html"}
  4731. );
  4732. url_bbox = ZrzwmsSource.getFeatureInfoUrl(
  4733. evt.coordinate,
  4734. viewResolution,
  4735. "EPSG:3857",
  4736. {INFO_FORMAT: "application/json"}
  4737. );
  4738. } else {
  4739. url = wmsSource.getFeatureInfoUrl(
  4740. evt.coordinate,
  4741. viewResolution,
  4742. "EPSG:3857",
  4743. {INFO_FORMAT: "text/html"}
  4744. );
  4745. url_bbox = wmsSource.getFeatureInfoUrl(
  4746. evt.coordinate,
  4747. viewResolution,
  4748. "EPSG:3857",
  4749. {INFO_FORMAT: "application/json"}
  4750. );
  4751. }
  4752. }
  4753. if (url_bbox) {
  4754. console.info(url_bbox);
  4755. fetch(url_bbox).then((res) => {
  4756. var geojsonmap = res.json();
  4757. return geojsonmap;
  4758. })
  4759. .then((data) => {
  4760. var center = ol.extent.getCenter(data.bbox); //获取边界区域的中心位置
  4761. center = [center[0], center[1] - 16];
  4762. that.clickBbox = center;
  4763. })
  4764. .catch((error) => {
  4765. that.mapZjdData = "";
  4766. that.mapZrzData = "";
  4767. that.mapFsssData = "";
  4768. //that.mapZjdTeAll.active ="1";
  4769. that.mapZjdTeAll.mapZjdAData = {};
  4770. that.mapZjdTeAll.mapZrzAData = {};
  4771. that.mapZjdTeAll.mapFsssAData = {};
  4772. that.mapZjdDataTure = "";
  4773. that.mapXs =false;
  4774. that.mapClick ="";
  4775. console.log("【异常】", error);
  4776. });
  4777. }
  4778. if (url) {
  4779. fetch(url)
  4780. .then(function (response) {
  4781. return response.text();
  4782. })
  4783. .then(function (html) {
  4784. console.info(html);
  4785. document.getElementById("info").innerHTML = html;
  4786. if (html.indexOf("<table") != -1) {
  4787. that.mapZjdData = "";
  4788. that.mapZrzData = "";
  4789. that.mapFsssData = "";
  4790. //that.mapZjdTeAll.active ="1";
  4791. that.mapZjdTeAll.mapZjdAData = {};
  4792. that.mapZjdTeAll.mapZrzAData = {};
  4793. that.mapZjdTeAll.mapFsssAData = {};
  4794. that.mapZjdDataTure = "";
  4795. setTimeout(() => {
  4796. if ($("#info .featureInfo .featureInfo").text() == "t_homestead_zjdzdxx_mobile_survey") {
  4797. map.removeLayer(hc_land_on);
  4798. that.mapHasDateStatus = 2;
  4799. that.mapXs = true;
  4800. let obj = {};
  4801. let trs = $("#info .featureInfo").find("tr:eq(1)");
  4802. let zjdXq = trs.find("td").eq(0).text();
  4803. let zjdIdNum = zjdXq.replace("t_homestead_zjdzdxx_mobile_survey.", "");
  4804. obj.id = zjdIdNum; // 主键id
  4805. obj.deptName = trs.find("td").eq(3).text();//行政区划名称
  4806. obj.zjddm = trs.find("td").eq(7).text();//宅基地代码
  4807. obj.zdmj = trs.find("td").eq(12).text();//宗地面积
  4808. obj.active = 1;
  4809. var vector_drawing_map;
  4810. let params = {
  4811. "deptId": that.surveyItem.deptId,
  4812. "zjddm": obj.zjddm,
  4813. }
  4814. that.mapClick = obj.zjddm;
  4815. //点击查看自然幢
  4816. //自然幢图层查询开始 ------------------start
  4817. var cql_filter_map = "dept_id='" + that.surveyItem.deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  4818. zrzTc = new ol.layer.Image({
  4819. source: new ol.source.ImageWMS({
  4820. url: that.mapGeoServerUrl + "/wms",
  4821. params: {
  4822. LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
  4823. TILED: true,
  4824. cql_filter: cql_filter_map,
  4825. SRID: 3857,
  4826. TIMESTAMP: new Date().getTime(),
  4827. },
  4828. }),
  4829. });
  4830. map.addLayer(zrzTc);
  4831. //自然幢图层查询开始 ------------------start
  4832. //附属设施图层查询开始 ------------------start
  4833. //var cql_filter_map = "dept_id='" + that.$cookies.get("item").deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  4834. // fsssTc = new ol.layer.Image({
  4835. // source: new ol.source.ImageWMS({
  4836. // url: that.mapGeoServerUrl + "/wms",
  4837. // params: {
  4838. // LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
  4839. // TILED: true,
  4840. // cql_filter: cql_filter_map,
  4841. // SRID: 3857,
  4842. // TIMESTAMP: new Date().getTime(),
  4843. // },
  4844. // }),
  4845. // });
  4846. // map.addLayer(fsssTc);
  4847. //附属设施图层查询开始 ------------------end
  4848. that.$cookies.set("search", "")
  4849. //that.$cookies.set("map", "")
  4850. console.log(document.cookie.split(';').length)
  4851. console.log(params);
  4852. listZjdzd(params).then((response) => {
  4853. if (response.rows[0].zdmj != "") {
  4854. that.textMjAll = response.rows[0].zdmj;
  4855. } else {
  4856. that.textMjAllNum = "1";
  4857. }
  4858. that.mapZjdData = response.rows[0];
  4859. that.mapZjdData.active = 1;
  4860. that.mapZjdTeAll.mapZjdAData = that.mapZjdData;
  4861. that.mapZjdDataTure = 1;
  4862. that.zjdHcDy = obj.zjddm;
  4863. var styleZjd = new ol.style.Style({
  4864. stroke: new ol.style.Stroke({
  4865. //边界样式
  4866. color: "#CCFF66",
  4867. width: 6,
  4868. }),
  4869. });
  4870. hc_land_on = new ol.layer.Vector({
  4871. title: "add Layer",
  4872. source: new ol.source.Vector({
  4873. projection: projection,
  4874. features: new ol.format.GeoJSON().readFeatures("{\n" +
  4875. " \"type\": \"Feature\",\n" +
  4876. " \"geometry\":" + that.mapZjdData.theGeomJson + ", \"properties\":" + JSON.stringify(that.mapZjdData) + "}"),
  4877. }),
  4878. style: styleZjd
  4879. });
  4880. map.addLayer(hc_land_on);
  4881. var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  4882. var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  4883. var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  4884. var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  4885. //定位查询位置
  4886. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  4887. map.getView().animate({
  4888. // 只设置需要的属性即可
  4889. center: center, // 中心点
  4890. zoom: 17.8, // 缩放级别
  4891. rotation: undefined, // 缩放完成view视图旋转弧度
  4892. duration: 1000, // 缩放持续时间,默认不需要设置
  4893. resolution:Math.random() * 0.00000001,
  4894. });
  4895. function createLabelStyleMap() {
  4896. return new ol.style.Style({
  4897. text: new ol.style.Text({
  4898. text: that.mapZjdData.syqr,
  4899. textAlign: "center", //位置
  4900. textBaseline: "middle", //基准线
  4901. font: "normal 16px 微软雅黑", //文字样式
  4902. //text: "标注点", //文本内容
  4903. fill: new ol.style.Fill({
  4904. //文本填充样式(即文字颜色)
  4905. color: "#09DDCE",
  4906. width: 10,
  4907. }),
  4908. overflow: false //超出面的部分不显示
  4909. }),
  4910. zIndex: 9999,
  4911. });
  4912. }
  4913. var newcenterFeatureMap = new ol.Feature({
  4914. geometry: new ol.geom.Point(center), //几何信息
  4915. //name: "标注点",
  4916. });
  4917. var sourceMapLookMap = new ol.source.Vector({wrapX: false});
  4918. vector_drawing_map = new ol.layer.Vector({
  4919. source: sourceMapLookMap,
  4920. });
  4921. map.addLayer(vector_drawing_map);
  4922. newcenterFeatureMap.setStyle(createLabelStyleMap()); //设置要素样式
  4923. sourceMapLookMap.addFeature(newcenterFeatureMap);
  4924. });
  4925. //let cloneObj = JSON.parse(JSON.stringify(obj));
  4926. //that.mapZjdData = cloneObj;
  4927. } else if ($("#info .featureInfo .featureInfo").text() == "t_homespace_zrz") {
  4928. //that.mapZjdTeAll.mapZjdAData ={};
  4929. that.mapXs = true;
  4930. that.mapZjdDataTure = "";
  4931. that.mapZjdTeAll.mapFsssAData = {};
  4932. map.removeLayer(hc_land_on);
  4933. let obj = {};
  4934. that.mapHasDateStatus = 1;
  4935. let trs = $("#info .featureInfo").find("tr:eq(1)");
  4936. let zrzXq = trs.find("td").eq(0).text();
  4937. let zrzIdNum = zrzXq.replace("t_homespace_zrz.", "");
  4938. obj.id = zrzIdNum; // 主键id
  4939. obj.deptName = trs.find("td").eq(3).text();//行政区划名称
  4940. obj.zjddm = trs.find("td").eq(6).text();//宅基地代码
  4941. obj.scjzmj = trs.find("td").eq(14).text();//实测建筑面积
  4942. let params = {
  4943. "deptId": that.surveyItem.deptId,
  4944. "zjddm": obj.zjddm,
  4945. }
  4946. that.mapClick = obj.zjddm;
  4947. that.$cookies.set("search", "")
  4948. //that.$cookies.set("map", "")
  4949. console.log(that.mapZjdData);
  4950. //if (that.mapZjdData !="" && that.mapZjdData !=null && that.mapZjdData !=undefined) {
  4951. if(that.mapXs && that.mapClick == obj.zjddm){
  4952. listZjdzd(params).then((response) => {
  4953. that.mapZjdData = response.rows[0];
  4954. //that.mapZjdAData.active = 1;
  4955. that.mapZjdTeAll.mapZjdAData = that.mapZjdData;
  4956. console.info(obj.id);
  4957. getZrz(obj.id).then((response) => {
  4958. if (response.data.scjzmj != "") {
  4959. that.textMjAll = response.data.scjzmj;
  4960. } else {
  4961. that.textMjAllNum = "1";
  4962. }
  4963. that.mapZrzData = response.data;
  4964. that.mapZrzData.active = 3;
  4965. that.mapZjdTeAll.mapZrzAData = that.mapZrzData;
  4966. that.zjdHcDy = obj.zjddm;
  4967. var styleZjd = new ol.style.Style({
  4968. stroke: new ol.style.Stroke({
  4969. //边界样式
  4970. color: "#CCFF66",
  4971. width: 6,
  4972. }),
  4973. });
  4974. hc_land_on = new ol.layer.Vector({
  4975. title: "add Layer",
  4976. source: new ol.source.Vector({
  4977. projection: projection,
  4978. features: new ol.format.GeoJSON().readFeatures("{\n" +
  4979. " \"type\": \"Feature\",\n" +
  4980. " \"geometry\":" + that.mapZrzData.theGeomJson + ", \"properties\":" + JSON.stringify(that.mapZrzData) + "}"),
  4981. }),
  4982. style: styleZjd
  4983. });
  4984. map.addLayer(hc_land_on);
  4985. var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  4986. var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  4987. var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  4988. var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  4989. //定位查询位置
  4990. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  4991. map.getView().animate({
  4992. // 只设置需要的属性即可
  4993. center: center, // 中心点
  4994. zoom: 17.8, // 缩放级别
  4995. rotation: undefined, // 缩放完成view视图旋转弧度
  4996. duration: 1000, // 缩放持续时间,默认不需要设置
  4997. resolution: Math.random() * 0.00000001,
  4998. });
  4999. });
  5000. });
  5001. } else {
  5002. //自然幢图层查询开始 ------------------start
  5003. var cql_filter_map = "dept_id='" + that.surveyItem.deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  5004. zrzTc = new ol.layer.Image({
  5005. source: new ol.source.ImageWMS({
  5006. url: that.mapGeoServerUrl + "/wms",
  5007. params: {
  5008. LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
  5009. TILED: true,
  5010. cql_filter: cql_filter_map,
  5011. SRID: 3857,
  5012. TIMESTAMP: new Date().getTime(),
  5013. },
  5014. }),
  5015. });
  5016. map.addLayer(zrzTc);
  5017. //自然幢图层查询开始 ------------------start
  5018. //附属设施图层查询开始 ------------------start
  5019. //var cql_filter_map = "dept_id='" + that.$cookies.get("item").deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  5020. fsssTc = new ol.layer.Image({
  5021. source: new ol.source.ImageWMS({
  5022. url: that.mapGeoServerUrl + "/wms",
  5023. params: {
  5024. LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
  5025. TILED: true,
  5026. cql_filter: cql_filter_map,
  5027. SRID: 3857,
  5028. TIMESTAMP: new Date().getTime(),
  5029. },
  5030. }),
  5031. });
  5032. map.addLayer(fsssTc);
  5033. //附属设施图层查询开始 ------------------end
  5034. listZjdzd(params).then((response) => {
  5035. if (response.rows[0].zdmj != "") {
  5036. that.textMjAll = response.rows[0].zdmj;
  5037. } else {
  5038. that.textMjAllNum = "1";
  5039. }
  5040. that.mapZjdData = response.rows[0];
  5041. that.mapZjdData.active = 1;
  5042. that.mapZjdTeAll.mapZjdAData = that.mapZjdData;
  5043. that.mapZjdDataTure = 1;
  5044. that.zjdHcDy = obj.zjddm;
  5045. that.mapClick = obj.zjddm;
  5046. that.mapXs = true;
  5047. var styleZjd = new ol.style.Style({
  5048. stroke: new ol.style.Stroke({
  5049. //边界样式
  5050. color: "#CCFF66",
  5051. width: 6,
  5052. }),
  5053. });
  5054. hc_land_on = new ol.layer.Vector({
  5055. title: "add Layer",
  5056. source: new ol.source.Vector({
  5057. projection: projection,
  5058. features: new ol.format.GeoJSON().readFeatures("{\n" +
  5059. " \"type\": \"Feature\",\n" +
  5060. " \"geometry\":" + that.mapZjdData.theGeomJson+ ", \"properties\":" + JSON.stringify(that.mapZjdData) + "}"),
  5061. }),
  5062. style: styleZjd
  5063. });
  5064. map.addLayer(hc_land_on);
  5065. var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  5066. var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  5067. var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  5068. var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  5069. //定位查询位置
  5070. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  5071. map.getView().animate({
  5072. // 只设置需要的属性即可
  5073. center: center, // 中心点
  5074. zoom: 17.8, // 缩放级别
  5075. rotation: undefined, // 缩放完成view视图旋转弧度
  5076. duration: 1000, // 缩放持续时间,默认不需要设置
  5077. resolution:Math.random() * 0.00000001,
  5078. });
  5079. function createLabelStyleMap() {
  5080. return new ol.style.Style({
  5081. text: new ol.style.Text({
  5082. text: that.mapZjdData.syqr,
  5083. textAlign: "center", //位置
  5084. textBaseline: "middle", //基准线
  5085. font: "normal 16px 微软雅黑", //文字样式
  5086. //text: "标注点", //文本内容
  5087. fill: new ol.style.Fill({
  5088. //文本填充样式(即文字颜色)
  5089. color: "#09DDCE",
  5090. width: 10,
  5091. }),
  5092. overflow: false //超出面的部分不显示
  5093. }),
  5094. zIndex: 9999,
  5095. });
  5096. }
  5097. var newcenterFeatureMap = new ol.Feature({
  5098. geometry: new ol.geom.Point(center), //几何信息
  5099. //name: "标注点",
  5100. });
  5101. var sourceMapLookMap = new ol.source.Vector({wrapX: false});
  5102. vector_drawing_map = new ol.layer.Vector({
  5103. source: sourceMapLookMap,
  5104. });
  5105. map.addLayer(vector_drawing_map);
  5106. newcenterFeatureMap.setStyle(createLabelStyleMap()); //设置要素样式
  5107. sourceMapLookMap.addFeature(newcenterFeatureMap);
  5108. });
  5109. }
  5110. } else if ($("#info .featureInfo .featureInfo").text() == "t_homestead_fsss") {
  5111. that.mapZjdTeAll.mapZrzAData = {};
  5112. that.mapZjdDataTure = "";
  5113. that.mapXs = true;
  5114. //that.mapZjdTeAll.mapZjdAData ={};
  5115. map.removeLayer(hc_land_on);
  5116. let obj = {};
  5117. that.mapHasDateStatus = 0;
  5118. let trs = $("#info .featureInfo").find("tr:eq(1)");
  5119. let fsssXq = trs.find("td").eq(0).text();
  5120. let fsssIdNum = fsssXq.replace("t_homestead_fsss.", "");
  5121. obj.id = fsssIdNum; // 主键id
  5122. obj.deptName = trs.find("td").eq(3).text();//行政区划名称
  5123. obj.zjddm = trs.find("td").eq(4).text();//宅基地代码
  5124. // obj.houseDataConfirmStatus = trs.find("td").eq(6).text(); //状态
  5125. // obj.fssslx = trs.find("td").eq(7).text(); //附属设施类型
  5126. obj.jzmj = trs.find("td").eq(6).text(); //建筑面积
  5127. let params = {
  5128. "deptId": that.surveyItem.deptId,
  5129. "zjddm": obj.zjddm,
  5130. "pageSize": 20,
  5131. }
  5132. that.mapClick = obj.zjddm;
  5133. that.$cookies.remove("search")
  5134. //if (that.mapZjdData !="" && that.mapZjdData !=null && that.mapZjdData !=undefined) {
  5135. if(that.mapXs && that.mapClick == obj.zjddm){
  5136. listZjdzd(params).then((response) => {
  5137. that.mapZjdData = response.rows[0];
  5138. that.mapZjdData.active = 1;
  5139. that.mapZjdTeAll.mapZjdAData = that.mapZjdData;
  5140. getFsss(obj.id).then((response) => {
  5141. if (response.data.jzmj != "") {
  5142. that.textMjAll = response.data.jzmj;
  5143. } else {
  5144. that.textMjAllNum = "1";
  5145. }
  5146. //that.mapfsssData.active = 4;
  5147. that.mapfsssData = response.data;
  5148. console.log(that.mapfsssData);
  5149. that.mapZjdTeAll.mapFsssAData = that.mapfsssData;
  5150. that.zjdHcDy = obj.zjddm;
  5151. var styleZjd = new ol.style.Style({
  5152. stroke: new ol.style.Stroke({
  5153. //边界样式
  5154. color: "#CCFF66",
  5155. width: 6,
  5156. }),
  5157. });
  5158. hc_land_on = new ol.layer.Vector({
  5159. title: "add Layer",
  5160. source: new ol.source.Vector({
  5161. projection: projection,
  5162. features: new ol.format.GeoJSON().readFeatures("{\n" +
  5163. " \"type\": \"Feature\",\n" +
  5164. " \"geometry\":" + that.mapfsssData.theGeomJson + ", \"properties\":" + JSON.stringify(that.mapfsssData) + "}"),
  5165. }),
  5166. style: styleZjd
  5167. });
  5168. map.addLayer(hc_land_on);
  5169. var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  5170. var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  5171. var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  5172. var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  5173. //定位查询位置
  5174. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  5175. map.getView().animate({
  5176. // 只设置需要的属性即可
  5177. center: center, // 中心点
  5178. zoom: 17.8, // 缩放级别
  5179. rotation: undefined, // 缩放完成view视图旋转弧度
  5180. duration: 1000, // 缩放持续时间,默认不需要设置
  5181. resolution: Math.random() * 0.00000001,
  5182. });
  5183. });
  5184. });
  5185. } else {
  5186. //自然幢图层查询开始 ------------------start
  5187. var cql_filter_map = "dept_id='" + that.surveyItem.deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  5188. zrzTc = new ol.layer.Image({
  5189. source: new ol.source.ImageWMS({
  5190. url: that.mapGeoServerUrl + "/wms",
  5191. params: {
  5192. LAYERS: 'nsgk_wulanhaote:t_homespace_zrz',
  5193. TILED: true,
  5194. cql_filter: cql_filter_map,
  5195. SRID: 3857,
  5196. TIMESTAMP: new Date().getTime(),
  5197. },
  5198. }),
  5199. });
  5200. map.addLayer(zrzTc);
  5201. //自然幢图层查询开始 ------------------start
  5202. //附属设施图层查询开始 ------------------start
  5203. //var cql_filter_map = "dept_id='" + that.$cookies.get("item").deptId + "'" + "and zjddm='" + obj.zjddm + "'";
  5204. fsssTc = new ol.layer.Image({
  5205. source: new ol.source.ImageWMS({
  5206. url: that.mapGeoServerUrl + "/wms",
  5207. params: {
  5208. LAYERS: 'nsgk_wulanhaote:t_homestead_fsss',
  5209. TILED: true,
  5210. cql_filter: cql_filter_map,
  5211. SRID: 3857,
  5212. TIMESTAMP: new Date().getTime(),
  5213. },
  5214. }),
  5215. });
  5216. map.addLayer(fsssTc);
  5217. //附属设施图层查询开始 ------------------end
  5218. listZjdzd(params).then((response) => {
  5219. if (response.rows[0].zdmj != "") {
  5220. that.textMjAll = response.rows[0].zdmj;
  5221. } else {
  5222. that.textMjAllNum = "1";
  5223. }
  5224. that.mapZjdData = response.rows[0];
  5225. that.mapZjdData.active = 1;
  5226. that.mapZjdTeAll.mapZjdAData = that.mapZjdData;
  5227. that.mapZjdDataTure = 1;
  5228. that.zjdHcDy = obj.zjddm;
  5229. that.mapClick = obj.zjddm;
  5230. that.mapXs = true;
  5231. var styleZjd = new ol.style.Style({
  5232. stroke: new ol.style.Stroke({
  5233. //边界样式
  5234. color: "#CCFF66",
  5235. width: 6,
  5236. }),
  5237. });
  5238. hc_land_on = new ol.layer.Vector({
  5239. title: "add Layer",
  5240. source: new ol.source.Vector({
  5241. projection: projection,
  5242. features: new ol.format.GeoJSON().readFeatures("{\n" +
  5243. " \"type\": \"Feature\",\n" +
  5244. " \"geometry\":" + that.mapZjdData.theGeomJson + ", \"properties\":" + JSON.stringify(that.mapZjdData) + "}"),
  5245. }),
  5246. style: styleZjd
  5247. });
  5248. map.addLayer(hc_land_on);
  5249. var maxXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxX;
  5250. var maxYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.maxY;
  5251. var minXMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minX;
  5252. var minYMap = hc_land_on.values_.source.featuresRtree_.rbush_.data.minY;
  5253. //定位查询位置
  5254. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  5255. map.getView().animate({
  5256. // 只设置需要的属性即可
  5257. center: center, // 中心点
  5258. zoom: 17.8, // 缩放级别
  5259. rotation: undefined, // 缩放完成view视图旋转弧度
  5260. duration: 1000, // 缩放持续时间,默认不需要设置
  5261. resolution:Math.random() * 0.00000001,
  5262. });
  5263. function createLabelStyleMap() {
  5264. return new ol.style.Style({
  5265. text: new ol.style.Text({
  5266. text: that.mapZjdData.syqr,
  5267. textAlign: "center", //位置
  5268. textBaseline: "middle", //基准线
  5269. font: "normal 16px 微软雅黑", //文字样式
  5270. //text: "标注点", //文本内容
  5271. fill: new ol.style.Fill({
  5272. //文本填充样式(即文字颜色)
  5273. color: "#09DDCE",
  5274. width: 10,
  5275. }),
  5276. overflow: false //超出面的部分不显示
  5277. }),
  5278. zIndex: 9999,
  5279. });
  5280. }
  5281. var newcenterFeatureMap = new ol.Feature({
  5282. geometry: new ol.geom.Point(center), //几何信息
  5283. //name: "标注点",
  5284. });
  5285. var sourceMapLookMap = new ol.source.Vector({wrapX: false});
  5286. vector_drawing_map = new ol.layer.Vector({
  5287. source: sourceMapLookMap,
  5288. });
  5289. map.addLayer(vector_drawing_map);
  5290. newcenterFeatureMap.setStyle(createLabelStyleMap()); //设置要素样式
  5291. sourceMapLookMap.addFeature(newcenterFeatureMap);
  5292. });
  5293. }
  5294. // if(obj.jzmj != ""){
  5295. // that.textMjAll = obj.jzmj;
  5296. // } else {
  5297. // that.textMjAllNum = "1";
  5298. // }
  5299. } else {
  5300. }
  5301. }, 300);
  5302. } else {
  5303. }
  5304. });
  5305. }
  5306. }
  5307. //数据库查询详情时使用----------------------------------------start
  5308. // if(feature) {
  5309. // //document.getElementById("info").innerHTML = "";
  5310. // that.mapHaDataValue = true;
  5311. // var ifConsole = feature.values_.createBy;
  5312. // if (ifConsole =="mapTheGeomFsssId") {
  5313. // let obj = {};
  5314. // that.mapHasDateStatus = 0;
  5315. // obj.deptName = feature.values_.deptName;//行政区划名称
  5316. // obj.zjddm = feature.values_.zjddm;//宅基地代码
  5317. // obj.houseDataConfirmStatus = feature.values_.houseDataConfirmStatus; //状态
  5318. // obj.fssslx = feature.values_.fssslx; //附属设施类型
  5319. // obj.jzmj = feature.values_.jzmj; //建筑面积
  5320. // obj.qsly = feature.values_.qsly;//权属来源
  5321. // obj.fwzt = feature.values_.fwzt; //房屋状态
  5322. // obj.sfsp = feature.values_.sfsp; //是否审批
  5323. // obj.sffz = feature.values_.sffz; //是否发证
  5324. // obj.jglx = feature.values_.jglx; //结构类型
  5325. // obj.sfzzsy = feature.values_.sfzzsy; //是否正在使用
  5326. // obj.jzwqk = feature.values_.jzwqk; //建筑物情况
  5327. // obj.tdzk = feature.values_.tdzk; //审批或建设前土地状况
  5328. // obj.sfsgcf = feature.values_.sfsgcf; //是否受过处罚
  5329. // obj.sysNormalDisable = feature.values_.sysNormalDisable; //是否停用
  5330. // //附属设施类型字典项
  5331. // that.getDicts("fsss_type").then((response) => {
  5332. // var assetTypeOptions = response.data;
  5333. // if(obj.fssslx !=null && obj.fssslx !=""){
  5334. // for(var i=0;assetTypeOptions.length >i; i++){
  5335. // if(obj.fssslx == assetTypeOptions[i].dictValue) {
  5336. // obj.fssslx = assetTypeOptions[i].dictLabel;
  5337. // break;
  5338. // }
  5339. // }
  5340. // }
  5341. // });
  5342. // //权属类型字典项
  5343. // that.getDicts("acquisition_method").then((response) => {
  5344. // var assetTypeOptions = response.data;
  5345. // if(obj.qsly !=null && obj.qsly !=""){
  5346. // for(var i=0;assetTypeOptions.length >i; i++){
  5347. // if(obj.qsly == assetTypeOptions[i].dictValue) {
  5348. // obj.qsly = assetTypeOptions[i].dictLabel;
  5349. // break;
  5350. // }
  5351. // }
  5352. // }
  5353. // });
  5354. // //房屋状态字典项
  5355. // that.getDicts("fwzt").then((response) => {
  5356. // var assetTypeOptions = response.data;
  5357. // if(obj.fwzt !=null && obj.fwzt !=""){
  5358. // for(var i=0;assetTypeOptions.length >i; i++){
  5359. // if(obj.fwzt == assetTypeOptions[i].dictValue) {
  5360. // obj.fwzt = assetTypeOptions[i].dictLabel;
  5361. // break;
  5362. // }
  5363. // }
  5364. // }
  5365. // });
  5366. // //是否审批字典项
  5367. // that.getDicts("sys_yes_no").then((response) => {
  5368. // var assetTypeOptions = response.data;
  5369. // if(obj.sfsp !=null && obj.sfsp !=""){
  5370. // for(var i=0;assetTypeOptions.length >i; i++){
  5371. // if(obj.sfsp == assetTypeOptions[i].dictValue) {
  5372. // obj.sfsp = assetTypeOptions[i].dictLabel;
  5373. // break;
  5374. // }
  5375. // }
  5376. // }
  5377. // });
  5378. // //是否发证字典项
  5379. // that.getDicts("sys_yes_no").then((response) => {
  5380. // var assetTypeOptions = response.data;
  5381. // if(obj.sffz !=null && obj.sffz !=""){
  5382. // for(var i=0;assetTypeOptions.length >i; i++){
  5383. // if(obj.sffz == assetTypeOptions[i].dictValue) {
  5384. // obj.sffz = assetTypeOptions[i].dictLabel;
  5385. // break;
  5386. // }
  5387. // }
  5388. // }
  5389. // });
  5390. // //结构类型字典项
  5391. // that.getDicts("house_jglx").then((response) => {
  5392. // var assetTypeOptions = response.data;
  5393. // if(obj.jglx !=null && obj.jglx !=""){
  5394. // for(var i=0;assetTypeOptions.length >i; i++){
  5395. // if(obj.jglx == assetTypeOptions[i].dictValue) {
  5396. // obj.jglx = assetTypeOptions[i].dictLabel;
  5397. // break;
  5398. // }
  5399. // }
  5400. // }
  5401. // });
  5402. // //是否正在使用字典项
  5403. // that.getDicts("sys_yes_no").then((response) => {
  5404. // var assetTypeOptions = response.data;
  5405. // if(obj.sfzzsy !=null && obj.sfzzsy !=""){
  5406. // for(var i=0;assetTypeOptions.length >i; i++){
  5407. // if(obj.sfzzsy == assetTypeOptions[i].dictValue) {
  5408. // obj.sfzzsy = assetTypeOptions[i].dictLabel;
  5409. // break;
  5410. // }
  5411. // }
  5412. // }
  5413. // });
  5414. // //房屋状态字典项
  5415. // that.getDicts("fwzt").then((response) => {
  5416. // var assetTypeOptions = response.data;
  5417. // if(obj.fwzt !=null && obj.fwzt !=""){
  5418. // for(var i=0;assetTypeOptions.length >i; i++){
  5419. // if(obj.fwzt == assetTypeOptions[i].dictValue) {
  5420. // obj.fwzt = assetTypeOptions[i].dictLabel;
  5421. // break;
  5422. // }
  5423. // }
  5424. // }
  5425. // });
  5426. // //土地状况字典项
  5427. // that.getDicts("land_state").then((response) => {
  5428. // var assetTypeOptions = response.data;
  5429. // if(obj.tdzk !=null && obj.tdzk !=""){
  5430. // for(var i=0;assetTypeOptions.length >i; i++){
  5431. // if(obj.tdzk == assetTypeOptions[i].dictValue) {
  5432. // obj.tdzk = assetTypeOptions[i].dictLabel;
  5433. // break;
  5434. // }
  5435. // }
  5436. // }
  5437. // });
  5438. // //是否受过处罚字典项
  5439. // that.getDicts("land_state").then((response) => {
  5440. // var assetTypeOptions = response.data;
  5441. // if(obj.sfsgcf !=null && obj.sfsgcf !=""){
  5442. // for(var i=0;assetTypeOptions.length >i; i++){
  5443. // if(obj.sfsgcf == assetTypeOptions[i].dictValue) {
  5444. // obj.sfsgcf = assetTypeOptions[i].dictLabel;
  5445. // break;
  5446. // }
  5447. // }
  5448. // }
  5449. // });
  5450. // that.mapFsssData = obj;
  5451. // } else if(ifConsole =="mapTheGeomZrzId"){
  5452. // let obj = {};
  5453. // that.mapHasDateStatus = 1;
  5454. // obj.deptName = feature.values_.deptName;//部门名称
  5455. // obj.zjddm = feature.values_.zjddm;//宅基地代码
  5456. // obj.nmfwzh = feature.values_.nmfwzh;//农民房屋幢号
  5457. // obj.zrzh = feature.values_.zrzh;//自然幢号
  5458. // obj.jgrq = feature.values_.jgrq;//竣工日期
  5459. // obj.jzwgd = feature.values_.jzwgd;//建筑物高度
  5460. // obj.zzdmj = feature.values_.zzdmj;//幢占地面积
  5461. // obj.zydmj = feature.values_.zydmj;//幢用地面积
  5462. // obj.scjzmj = feature.values_.scjzmj;//实测建筑面积
  5463. // obj.zcs = feature.values_.zcs;//总层数
  5464. // obj.dscs = feature.values_.dscs;//地上层数
  5465. // obj.dxcs = feature.values_.dxcs;//地下层数
  5466. // obj.fwjg = feature.values_.fwjg;//房屋结构
  5467. // obj.sjly = feature.values_.sjly;//数据来源
  5468. // obj.status = feature.values_.status;//状态
  5469. // obj.houseDataConfirmStatus = feature.values_.houseDataConfirmStatus;//数据调查确认状态
  5470. // //字典项转化
  5471. // //房屋结构字典项
  5472. // that.getDicts("housing_structure").then((response) => {
  5473. // var assetTypeOptions = response.data;
  5474. // if(obj.fwjg !=null && obj.fwjg !=""){
  5475. // for(var i=0;assetTypeOptions.length >i; i++){
  5476. // if(obj.fwjg == assetTypeOptions[i].dictValue) {
  5477. // obj.fwjg = assetTypeOptions[i].dictLabel;
  5478. // break;
  5479. // }
  5480. // }
  5481. // }
  5482. // });
  5483. // //房屋结构字典项
  5484. // that.getDicts("sjly").then((response) => {
  5485. // var assetTypeOptions = response.data;
  5486. // if(obj.sjly !=null && obj.sjly !=""){
  5487. // for(var i=0;assetTypeOptions.length >i; i++){
  5488. // if(obj.sjly == assetTypeOptions[i].dictValue) {
  5489. // obj.sjly = assetTypeOptions[i].dictLabel;
  5490. // break;
  5491. // }
  5492. // }
  5493. // }
  5494. // });
  5495. // that.mapZrzData = obj;
  5496. // } else if(ifConsole =="mapTheGeomZjdId"){
  5497. // let obj = {};
  5498. // that.mapHasDateStatus = 2;
  5499. // obj.deptName = feature.values_.deptName;//行政区划名称
  5500. // obj.suyqrdm = feature.values_.suyqrdm;//所有权人代码
  5501. // obj.nhdm = feature.values_.nhdm;//农户代码
  5502. // obj.zjddm = feature.values_.zjddm;//宅基地代码
  5503. // obj.zdbh = feature.values_.zdbh;//宗地编号
  5504. // obj.zddm = feature.values_.zddm;//宗地代码
  5505. // obj.zl = feature.values_.zl;//坐落
  5506. // obj.zldwdm = feature.values_.zldwdm;//坐落单位代码
  5507. // obj.zdmj = feature.values_.zdmj;//宗地面积
  5508. // obj.yt = feature.values_.yt;//用途
  5509. // obj.ytmc = feature.values_.ytmc;//用途名称
  5510. // obj.dj = feature.values_.dj;//宗地编号
  5511. // obj.jg = feature.values_.jg;//价格万元
  5512. // obj.qllx = feature.values_.qllx;//权利类型
  5513. // obj.qlxz = feature.values_.qlxz;//权利性质
  5514. // obj.qlsdfs = feature.values_.qlsdfs;//权利设定方式
  5515. // obj.rjl = feature.values_.rjl;//容积率
  5516. // obj.jzmd = feature.values_.jzmd;//建筑密度
  5517. // obj.jzxg = feature.values_.jzxg;//建筑限高
  5518. // obj.zdszd = feature.values_.zdszd;//宗地四至-东
  5519. // obj.zdszn = feature.values_.zdszn;//宗地四至-南
  5520. // obj.zdszx = feature.values_.zdszx;//宗地四至-西
  5521. // obj.zdszb = feature.values_.zdszb;//宗地四至-北
  5522. // obj.zdt = feature.values_.zdt;//宗地图
  5523. // obj.tfh = feature.values_.tfh;//图幅号
  5524. // obj.djh = feature.values_.djh;//地籍号
  5525. // obj.sjly = feature.values_.sjly;//数据来源
  5526. // obj.lyzk = feature.values_.lyzk;//当前利用状况
  5527. // obj.xzkssj = feature.values_.xzkssj;//闲置开始时间
  5528. // obj.sffz = feature.values_.sffz;//是否发证
  5529. // obj.zjdzsh = feature.values_.zjdzsh;//宅基地证书号
  5530. // obj.zjdxctp = feature.values_.zjdxctp;//宅基地现场图片
  5531. // obj.zjdqdfs = feature.values_.zjdqdfs;//宅基地取得方式
  5532. // obj.bccjl = feature.values_.bccjl;//被惩处经历
  5533. // obj.bccbz = feature.values_.bccbz;//被惩处备注
  5534. // obj.yctcyx = feature.values_.yctcyx;//有偿退出意向
  5535. // obj.zjdpzmj = feature.values_.zjdpzmj;//宅基地批准面积
  5536. // obj.zjdxzyy = feature.values_.zjdxzyy;//宅基地闲置原因
  5537. // obj.lzyx = feature.values_.lzyx;//流转意向
  5538. // obj.sysNormalDisable = feature.values_.sysNormalDisable;//是否停用
  5539. // obj.active = 1;
  5540. // //字典项转化
  5541. // //是否发证字典项
  5542. // that.getDicts("sys_yes_no").then((response) => {
  5543. // var assetTypeOptions = response.data;
  5544. // if(obj.sffz !=null && obj.sffz !=""){
  5545. // for(var i=0;assetTypeOptions.length >i; i++){
  5546. // if(obj.sffz == assetTypeOptions[i].dictValue) {
  5547. // obj.sffz = assetTypeOptions[i].dictLabel;
  5548. // break;
  5549. // }
  5550. // }
  5551. // }
  5552. // });
  5553. // //利用状态字典项
  5554. // that.getDicts("zjdlyzk").then((response) => {
  5555. // var assetTypeOptions = response.data;
  5556. // if(obj.lyzk !=null && obj.lyzk !=""){
  5557. // for(var i=0;assetTypeOptions.length >i; i++){
  5558. // if(obj.lyzk == assetTypeOptions[i].dictValue) {
  5559. // obj.lyzk = assetTypeOptions[i].dictLabel;
  5560. // break;
  5561. // }
  5562. // }
  5563. // }
  5564. // });
  5565. // //流转意向字典项
  5566. // that.getDicts("is_have").then((response) => {
  5567. // var assetTypeOptions = response.data;
  5568. // if(obj.lzyx !=null && obj.lzyx !=""){
  5569. // for(var i=0;assetTypeOptions.length >i; i++){
  5570. // if(obj.lzyx == assetTypeOptions[i].dictValue) {
  5571. // obj.lzyx = assetTypeOptions[i].dictLabel;
  5572. // break;
  5573. // }
  5574. // }
  5575. // }
  5576. // });
  5577. // //有偿退出意向字典项
  5578. // that.getDicts("is_have").then((response) => {
  5579. // var assetTypeOptions = response.data;
  5580. // if(obj.yctcyx !=null && obj.yctcyx !=""){
  5581. // for(var i=0;assetTypeOptions.length >i; i++){
  5582. // if(obj.yctcyx == assetTypeOptions[i].dictValue) {
  5583. // obj.yctcyx = assetTypeOptions[i].dictLabel;
  5584. // break;
  5585. // }
  5586. // }
  5587. // }
  5588. // });
  5589. // //被惩处经历字典项
  5590. // that.getDicts("is_have").then((response) => {
  5591. // var assetTypeOptions = response.data;
  5592. // if(obj.bccjl !=null && obj.bccjl !=""){
  5593. // for(var i=0;assetTypeOptions.length >i; i++){
  5594. // if(obj.bccjl == assetTypeOptions[i].dictValue) {
  5595. // obj.bccjl = assetTypeOptions[i].dictLabel;
  5596. // break;
  5597. // }
  5598. // }
  5599. // }
  5600. // });
  5601. // //宅基地取得方式字典项
  5602. // that.getDicts("acquisition_method").then((response) => {
  5603. // var assetTypeOptions = response.data;
  5604. // if(obj.zjdqdfs !=null && obj.zjdqdfs !=""){
  5605. // for(var i=0;assetTypeOptions.length >i; i++){
  5606. // if(obj.zjdqdfs == assetTypeOptions[i].dictValue) {
  5607. // obj.zjdqdfs = assetTypeOptions[i].dictLabel;
  5608. // break;
  5609. // }
  5610. // }
  5611. // }
  5612. // });
  5613. // //权利设定方式字典项
  5614. // that.getDicts("right_setting_mode").then((response) => {
  5615. // var assetTypeOptions = response.data;
  5616. // if(obj.qlsdfs !=null && obj.qlsdfs !=""){
  5617. // for(var i=0;assetTypeOptions.length >i; i++){
  5618. // if(obj.qlsdfs == assetTypeOptions[i].dictValue) {
  5619. // obj.qlsdfs = assetTypeOptions[i].dictLabel;
  5620. // break;
  5621. // }
  5622. // }
  5623. // }
  5624. // });
  5625. // //数据来源字典项
  5626. // that.getDicts("sjly").then((response) => {
  5627. // var assetTypeOptions = response.data;
  5628. // if(obj.sjly !=null && obj.sjly !=""){
  5629. // for(var i=0;assetTypeOptions.length >i; i++){
  5630. // if(obj.sjly == assetTypeOptions[i].dictValue) {
  5631. // obj.sjly = assetTypeOptions[i].dictLabel;
  5632. // break;
  5633. // }
  5634. // }
  5635. // }
  5636. // });
  5637. // that.mapZjdData = obj;
  5638. // console.log(obj.zjddm);
  5639. // that.zjdHcDy = obj.zjddm;
  5640. // } else {
  5641. // that.mapHaDataValue = false;
  5642. // }
  5643. // }else {
  5644. // that.mapHaDataValue = false;
  5645. // }
  5646. //数据库查询详情时使用----------------------------------------end
  5647. });
  5648. //数据库循环加载时使用 --------------------加载较慢 ------start
  5649. //当前账套没有任何空间数据
  5650. // if(mapTalkAbout){
  5651. // let deptName = this.$store.state.user.loginDeptId + "";
  5652. // getQueryLand(deptName).then((response) => {
  5653. // if (response.code == 200) {
  5654. // let InsertCode = response.data;
  5655. // if (InsertCode != null) {
  5656. // var lat = InsertCode.lat;
  5657. // var lng = InsertCode.lng;
  5658. // var center;
  5659. // if(lat !=null && lng !=null && lat !="" && lng !=""){
  5660. // center = [lng,lat];
  5661. // }else {
  5662. // center =[115.452752, 31.789033];
  5663. // }
  5664. // map.getView().animate({
  5665. // // 只设置需要的属性即可
  5666. // center: ol.proj.fromLonLat(center), // 中心点
  5667. // zoom: 17.9, // 缩放级别
  5668. // rotation: undefined, // 缩放完成view视图旋转弧度
  5669. // duration: 1000, // 缩放持续时间,默认不需要设置
  5670. // });
  5671. // }
  5672. // }
  5673. // });
  5674. // }
  5675. //数据库循环加载时使用 --------------------加载较慢 ------start
  5676. },
  5677. /*右侧列表 --展开收缩*/
  5678. selectionPushMap() {
  5679. this.selectionIconShow = true;
  5680. this.homesteadListStatus = true;
  5681. $(".homesteadList_wrap").animate(
  5682. {
  5683. right: "0",
  5684. },
  5685. 300
  5686. );
  5687. },
  5688. homesteadListShrink() {
  5689. this.selectionIconShow = false;
  5690. // this.checked =["zjdSx","zrzSx","fsssSx"];
  5691. $(".homesteadList_wrap").animate(
  5692. {
  5693. right: "-300px",
  5694. },
  5695. 300
  5696. );
  5697. setTimeout(() => {
  5698. this.homesteadListStatus = false;
  5699. }, 300);
  5700. },
  5701. checkClick(res){
  5702. // 1、全选与不全选模块
  5703. $(".checkall").change(function() {
  5704. $(".item-list-checkbox .checkitem").prop("checked", $(this).prop("checked"));
  5705. if($(this).prop("checked")){
  5706. }else {
  5707. }
  5708. });
  5709. // 2、小复选框模块
  5710. $(".checkitem").change(function() {
  5711. if ($(".checkitem:checked").length === $(".checkitem").length) {
  5712. $(".checkall").prop("checked", true);
  5713. } else {
  5714. $(".checkall").prop("checked", false);
  5715. }
  5716. })
  5717. },
  5718. //绘制多边形地图
  5719. drawMapPolygonFun() {
  5720. },
  5721. guidProduct(){
  5722. return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
  5723. var r = Math.random() * 16 | 0,
  5724. v = c == 'x' ? r : (r & 0x3 | 0x8);
  5725. return v.toString(16);
  5726. });
  5727. },
  5728. //宅基地点击地图核查
  5729. zjdHc(){
  5730. console.info(this.mapZrzData)
  5731. if(this.zjdHcDy != "" && this.zjdHcDy != "undefined"){
  5732. localStorage.setItem("executePermission",true);
  5733. if(this.mapZjdData !=undefined && this.mapZjdData !="" && this.mapZjdDataTure !=""){
  5734. this.mapZjdTeAll.active =1;
  5735. //this.$cookies.set("search",this.mapZjdTeAll);
  5736. this.$cookies.set("search","")
  5737. let trs = $("#info .featureInfo").find("tr:eq(1)");
  5738. let zjdXq = trs.find("td").eq(0).text();
  5739. let zjdIdNum = zjdXq.replace("t_homestead_zjdzdxx_mobile_survey.", "");
  5740. getZjdzd(zjdIdNum).then((response) => {
  5741. this.mapZjdData = response.data;
  5742. this.mapZjdTeAll.active = 1;
  5743. this.mapZjdTeAll.mapZjdAData = this.mapZjdData;
  5744. //this.$cookies.set("search",this.mapZjdTeAll);
  5745. localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdTeAll.mapZjdAData));
  5746. setTimeout(() => {
  5747. this.$router.push({path:'/homesteadSurvey/add',query: {res: this.mapZjdTeAll}});
  5748. }, 500);
  5749. });
  5750. //this.$router.push({path:'/homesteadSurvey/add'});
  5751. }else if(this.mapZrzData !=undefined && this.mapZrzData !=""){
  5752. if(this.mapZjdTeAll.mapZjdAData !=""){
  5753. this.mapZjdTeAll.active = 3;
  5754. //this.$cookies.set("search",this.mapZjdTeAll);
  5755. this.$cookies.set("search","")
  5756. console.info(this.mapZjdTeAll);
  5757. localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdTeAll.mapZjdAData));
  5758. this.$router.push({path:'/homesteadSurvey/zrzAdd',query: this.mapZjdTeAll.mapZrzAData});
  5759. } else {
  5760. this.$toast("必须有宅基地数据才能进入自然幢核查");
  5761. }
  5762. }else {
  5763. if(this.mapZjdTeAll.mapZjdAData !="") {
  5764. this.mapZjdTeAll.active = 4;
  5765. //this.$cookies.set("search", this.mapZjdTeAll);
  5766. this.$cookies.set("search","")
  5767. localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdTeAll.mapZjdAData));
  5768. this.$router.push({path: '/homesteadSurvey/fsssAdd',query: this.mapZjdTeAll.mapFsssAData});
  5769. } else {
  5770. this.$toast("必须有宅基地数据才能进入附属设施核查");
  5771. }
  5772. }
  5773. } else {
  5774. this.$dialog.alert({
  5775. title: '宅基地核查',
  5776. message: "请从地图中选择图层并点击核查",
  5777. theme: 'round-button',
  5778. }).then(() => {
  5779. // on close
  5780. });
  5781. }
  5782. },
  5783. //搜索详情跳转
  5784. zjdSs(item){
  5785. this.mapZjdTeAll.mapZjdAData ={};
  5786. this.mapZjdTeAll.mapZrzAData ={};
  5787. this.mapZjdTeAll.mapFsssAData ={};
  5788. //this.mapZjdTeAll.active =1;
  5789. localStorage.setItem("executePermission",true);
  5790. if(item.typeTc =="宅基地"){
  5791. getZjdzd(item.id).then((response) => {
  5792. this.mapZjdData = response.data;
  5793. this.mapZjdTeAll.active = 1;
  5794. this.mapZjdTeAll.mapZjdAData = this.mapZjdData;
  5795. //this.$cookies.set("search",this.mapZjdTeAll);
  5796. console.info(this.mapZjdTeAll.mapZjdAData);
  5797. localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdTeAll.mapZjdAData));
  5798. setTimeout(() => {
  5799. this.$router.push({path:'/homesteadSurvey/add',query: {res: this.mapZjdTeAll}});
  5800. }, 500);
  5801. });
  5802. }else if(item.typeTc =="自然幢"){
  5803. //let =
  5804. getZjdzd(item.id).then((response) => {
  5805. this.mapZrzData = response.data;
  5806. this.mapZjdTeAll.active = 3;
  5807. this.mapZjdTeAll.mapZrzAData = this.mapZrzData;
  5808. //this.$cookies.set("search",this.mapZjdTeAll);
  5809. this.$cookies.set("search","")
  5810. setTimeout(() => {
  5811. this.$router.push({path:'/homesteadSurvey/add',query: {res: this.mapZjdTeAll}});
  5812. }, 500);
  5813. });
  5814. }else if(item.typeTc =="附属设施"){
  5815. getFsss(item.id).then((response) => {
  5816. this.mapFsssData = response.data;
  5817. this.mapZjdTeAll.active = 4;
  5818. this.mapZjdTeAll.mapFsssAData = this.mapFsssData;
  5819. //this.$cookies.set("search",this.mapZjdTeAll);
  5820. this.$cookies.set("search","")
  5821. setTimeout(() => {
  5822. this.$router.push({path:'/homesteadSurvey/add',query: {res: this.mapZjdTeAll}});
  5823. }, 500);
  5824. });
  5825. }else{
  5826. this.$toast("无数据请检查后进入核查页面");
  5827. }
  5828. },
  5829. //地图查询
  5830. toggleSearch() {
  5831. $("#query").trigger("click");
  5832. },
  5833. //
  5834. checkAllArray(value){
  5835. if(this.checked.length<7){
  5836. this.$refs.checkboxGroup.toggleAll(true);
  5837. }else{
  5838. this.$refs.checkboxGroup.toggleAll(false);
  5839. }
  5840. },
  5841. //筛选//全选
  5842. checkAll(val) {
  5843. this.$refs.checkboxGroup.value.toggleAll(true);
  5844. return;
  5845. let checkedCount = this.CheckedAllArr.length
  5846. if (val) {
  5847. //全选
  5848. this.CheckedAllArr = this.dataList.map(item => item.id)
  5849. } else{
  5850. //取消全选
  5851. if (checkedCount === this.dataList.length) {
  5852. //如果不增加这个条件判断点击某一项时会全部取消
  5853. this.CheckedAllArr = []
  5854. }
  5855. }
  5856. },
  5857. //单选
  5858. handleChecked(value) {
  5859. // this.checkAllFlag = this.CheckedAllArr.length == this.dataList.length;
  5860. if (value.length<7){
  5861. this.checkAllFlag = false;
  5862. }else{
  5863. this.checkAllFlag = true;
  5864. }
  5865. console.info(value);
  5866. value.indexOf('zjdDdc') == -1 ? this.zjdDdc = false : this.zjdDdc = true;
  5867. value.indexOf('zjdDcyc') == -1 ? this.zjdDcyc = false : this.zjdDcyc = true;
  5868. value.indexOf('zjdDcwc') == -1 ? this.zjdDcwc = false : this.zjdDcwc = true;
  5869. value.indexOf('zjdDcbh') == -1 ? this.zjdDcbh = false : this.zjdDcbh = true;
  5870. value.indexOf('zjdSptg') == -1 ? this.zjdSptg = false : this.zjdSptg = true;
  5871. value.indexOf('zrzSx') == -1 ? this.zrzSx = false : this.zrzSx = true;
  5872. value.indexOf('fsssSx') == -1 ? this.fsssSx = false : this.fsssSx = true;
  5873. },
  5874. closeSearchBox(){
  5875. this.showSearch = false ;
  5876. var height = $(".searchBar_wrap").outerHeight(true) - $(".searchBar_wrap .van-search").outerHeight(true)
  5877. document.styleSheets[0].insertRule(
  5878. "@keyframes test2" +
  5879. "{" +
  5880. "0%{bottom: 0px}" +
  5881. "100%{bottom: -" + height + "px;}" +
  5882. "}"
  5883. )
  5884. $('.searchBar_wrap').css({'animation':'test2 0.5s ease-in-out 0s 1 alternate forwards','-webkit-animation':'test2 0.5s ease-in-out 0s 1 alternate forwards'});
  5885. },
  5886. zjdTz(){
  5887. if(this.mapZjdData =="" && this.mapZjdDataTure =="" && this.mapZjdData !=undefined){
  5888. this.mapZjdTeAll.active =1;
  5889. this.mapZjdTeAll.mapZjdAData.deptId =JSON.parse(localStorage.getItem("surveyItem")).deptId;
  5890. this.mapZjdTeAll.mapZjdAData.theGeomJson =this.htZjdZrzFsss;
  5891. console.info(this.mapZjdTeAll.mapZjdAData.theGeomJson);
  5892. listSuyqr({deptId: this.item.deptId}).then((response) => {
  5893. this.$set(this.mapZjdTeAll.mapZjdAData, "suyqrdm",response.rows[0]);
  5894. });
  5895. this.$set(this.mapZjdTeAll.mapZjdAData, "zjdlyzk","1");
  5896. this.$set(this.mapZjdTeAll.mapZjdAData, "landStatus","1");
  5897. this.$set(this.mapZjdTeAll.mapZjdAData, "houseOwnership","2");
  5898. this.$set(this.mapZjdTeAll.mapZjdAData, "landPhms","10");
  5899. this.$set(this.mapZjdTeAll.mapZjdAData, "isMore","0");
  5900. this.$set(this.mapZjdTeAll.mapZjdAData, "sffz","0");
  5901. this.$set(this.mapZjdTeAll.mapZjdAData, "sfcz","0");
  5902. this.$set(this.mapZjdTeAll.mapZjdAData, "zjdqdfs","01");
  5903. this.$set(this.mapZjdTeAll.mapZjdAData, "sjly","01");
  5904. this.$set(this.mapZjdTeAll.mapZjdAData, "qlsdfs","1");
  5905. this.$set(this.mapZjdTeAll.mapZjdAData, "qllx","1");
  5906. this.$set(this.mapZjdTeAll.mapZjdAData, "qlxz","203");
  5907. this.$set(this.mapZjdTeAll.mapZjdAData, "yt","01");
  5908. this.$set(this.mapZjdTeAll.mapZjdAData, "dj","1");
  5909. //this.mapZjdTeAll.mapZjdAData.deptId = this.$cookies.get("item").deptId;
  5910. //this.$cookies.set("search",this.mapZjdTeAll);
  5911. this.$cookies.set("search","")
  5912. localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdTeAll.mapZjdAData));
  5913. this.$router.push({path:'/homesteadSurvey/add'});
  5914. }else {
  5915. this.$toast("已选择宅基地,请选择自然幢或附属设施按钮");
  5916. }
  5917. },
  5918. zrzTz(){
  5919. if(this.mapZjdData !=undefined && this.mapZjdData !="" && this.mapZjdDataTure !=""){
  5920. console.info(this.mapZjdData);
  5921. this.mapZjdTeAll.active =3;
  5922. this.mapZjdTeAll.mapZrzAData.theGeomJson =this.htZjdZrzFsss;
  5923. console.info(this.htZjdZrzFsss);
  5924. this.mapZjdTeAll.mapZrzAData.deptId =JSON.parse(localStorage.getItem("surveyItem")).deptId;
  5925. this.mapZjdTeAll.mapZrzAData.zjddm = this.mapZjdData.zjddm;
  5926. this.mapZjdTeAll.mapZrzAData.fwjg = "01";
  5927. //this.mapZjdTeAll.mapZrzAData.deptId = this.$cookies.get("item").deptId;
  5928. //this.$cookies.set("search",this.mapZjdTeAll);
  5929. this.$cookies.set("search","")
  5930. localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdData));
  5931. this.$router.push({name:'zrzAdd',query:this.mapZjdTeAll.mapZrzAData});
  5932. }else {
  5933. this.$toast("请先在地图上选择宅基地后,再选择自然幢按钮");
  5934. }
  5935. },
  5936. fsssTz(){
  5937. if(this.mapZjdData !=undefined && this.mapZjdData !="" && this.mapZjdDataTure !=""){
  5938. this.mapZjdTeAll.active =4;
  5939. this.mapZjdTeAll.mapFsssAData.theGeomJson =this.htZjdZrzFsss;
  5940. this.mapZjdTeAll.mapFsssAData.zjddm = this.mapZjdData.zjddm;
  5941. this.mapZjdTeAll.mapFsssAData.deptId =JSON.parse(localStorage.getItem("surveyItem")).deptId;
  5942. //this.mapZjdTeAll.mapFsssAData.deptId = this.$cookies.get("item").deptId;
  5943. //this.$cookies.set("search",this.mapZjdTeAll);
  5944. this.$cookies.set("search","")
  5945. localStorage.setItem("zjdzdxxItem",JSON.stringify(this.mapZjdData));
  5946. this.$router.push({name:'fsssAdd',query:this.mapZjdTeAll.mapFsssAData});
  5947. }else {
  5948. this.$toast("请先在地图上选择宅基地后,再选择附属设施按钮");
  5949. }
  5950. },
  5951. //绘图重置清除之前图层
  5952. deleteHistory(){
  5953. $("#deleteHistory").trigger("click");
  5954. }
  5955. },
  5956. }
  5957. </script>
  5958. <style scoped lang="scss">
  5959. /deep/ .van-swipe-cell__wrapper{
  5960. margin-right:-3px;
  5961. }
  5962. .hzlxBtn{
  5963. font-size: 0.3rem;
  5964. display: inline-block;
  5965. padding: 2% 0;
  5966. border-radius: 30PX;
  5967. color: #FFF;
  5968. margin-right: 2%;
  5969. width: 30%;
  5970. &:last-child{
  5971. margin: 0;
  5972. }
  5973. }
  5974. .van-cell__title{
  5975. flex:2
  5976. }
  5977. .bannerBg{
  5978. width: 100%;
  5979. color:#fff;
  5980. /*padding:10px;*/
  5981. background: linear-gradient(134deg,#7ac943 1%, #22b7f2);
  5982. }
  5983. .van-hairline--bottom::after {
  5984. border-bottom-width: 0;
  5985. }
  5986. .activeBtn{
  5987. background:#fff;
  5988. border-radius:25PX;
  5989. color:#7AC943;
  5990. line-height:30PX;
  5991. text-align:center;
  5992. font-size:14PX;
  5993. width: 25%;
  5994. margin:0 10px;
  5995. box-shadow: 0px 5px 6px 0px rgba(0,0,0,0.16);
  5996. }
  5997. .disactiveBtn{
  5998. background:rgba(255,255,255,.4);
  5999. border-radius:25PX;
  6000. color:#fff;
  6001. line-height:30PX;
  6002. text-align:center;
  6003. font-size:14PX;
  6004. width: 25%;
  6005. margin:0 10px;
  6006. box-shadow: 0px 5px 6px 0px rgba(0,0,0,0.16);
  6007. }
  6008. /*.van-cell__label{*/
  6009. /* color: #969799;*/
  6010. /* font-size: 12px;*/
  6011. /* line-height: 20px;*/
  6012. /* margin:0*/
  6013. /*}*/
  6014. .map_area {
  6015. width: 50vw;
  6016. height: 50vh;
  6017. z-index:1;
  6018. background:#000;
  6019. position: fixed;
  6020. left: 0;
  6021. top: 0;
  6022. }
  6023. .van-field__label{
  6024. width:50%;
  6025. }
  6026. .rightZoom_wrap {
  6027. position: absolute;
  6028. right: 3%;
  6029. top: 35%;
  6030. margin-top: -200px;
  6031. background: #fff;
  6032. margin-bottom: 16px;
  6033. border-radius: 10px;
  6034. text-align: center;
  6035. padding: 15px 20px;
  6036. img{
  6037. margin: 0 auto;
  6038. }
  6039. .amplification {
  6040. line-height: 1;
  6041. font-size: 18px;
  6042. text-align: center;
  6043. margin-top: 5px;
  6044. }
  6045. }
  6046. .mapZoom_wrap {
  6047. position: absolute;
  6048. right: 3%;
  6049. top: 50%;
  6050. margin-top: -200px;
  6051. background: #fff;
  6052. margin-bottom: 16px;
  6053. border-radius: 10px;
  6054. padding: 0px 20px;
  6055. div{
  6056. padding: 15px 0;
  6057. border-bottom: 1px solid #C9C9C9;
  6058. &:last-child{
  6059. border: none;
  6060. }
  6061. p{
  6062. margin-top: 5px;
  6063. }
  6064. }
  6065. .qtMap {
  6066. font-size: 18px;
  6067. text-align: center;
  6068. line-height: 1;
  6069. }
  6070. .clMap {
  6071. font-size: 18px;
  6072. text-align: center;
  6073. line-height: 1;
  6074. }
  6075. .hcMap {
  6076. font-size: 18px;
  6077. text-align: center;
  6078. line-height: 1;
  6079. }
  6080. .htMap {
  6081. font-size: 18px;
  6082. text-align: center;
  6083. line-height: 1;
  6084. }
  6085. .dwMap {
  6086. font-size: 18px;
  6087. text-align: center;
  6088. line-height: 1;
  6089. }
  6090. }
  6091. .rightIcon_wrap {
  6092. position: absolute;
  6093. right: 16px;
  6094. bottom: 160px;
  6095. .selectionIcon_wrap {
  6096. width: 74px;
  6097. background: #fff;
  6098. border-radius: 10px;
  6099. padding: 14px 0;
  6100. .icon {
  6101. width: 38px;
  6102. height: 38px;
  6103. background: url("../../assets/images/homestead/selection_icon.png")
  6104. no-repeat;
  6105. background-size: 100% 100%;
  6106. margin: 0 auto 4px;
  6107. }
  6108. .text {
  6109. font-size: 24px;
  6110. text-align: center;
  6111. }
  6112. }
  6113. .positioning_wrap {
  6114. width: 74px;
  6115. background: #fff;
  6116. margin-bottom: 16px;
  6117. border-radius: 10px;
  6118. height: 74px;
  6119. display: flex;
  6120. justify-content: center; /* 相对父元素水平居中 */
  6121. align-items: center; /* 子元素相对父元素垂直居中*/
  6122. .icon {
  6123. width: 38px;
  6124. height: 38px;
  6125. background: url("../../assets/images/homestead/positioning_icon.png")
  6126. no-repeat;
  6127. background-size: 100% 100%;
  6128. margin: 0 auto;
  6129. }
  6130. }
  6131. }
  6132. .homesteadList_wrap {
  6133. // display: none;
  6134. display: flex;
  6135. position: absolute;
  6136. right: -200px;
  6137. top: 0px;
  6138. bottom: 0px;
  6139. width: 300px;
  6140. background: #fff;
  6141. z-index: 999;
  6142. border-top-left-radius: 15px;
  6143. border-bottom-left-radius: 15px;
  6144. flex-direction: column;
  6145. .noInfo_data {
  6146. font-size: 28px;
  6147. text-align: center;
  6148. height: 300px;
  6149. line-height: 300px;
  6150. color: #666;
  6151. }
  6152. .title_m {
  6153. color: #333;
  6154. line-height: 36px;
  6155. padding: 20px 40px 22px;
  6156. .name {
  6157. font-size: 36px;
  6158. line-height: 42px;
  6159. height: 42px;
  6160. }
  6161. .more_icon {
  6162. width: 38px;
  6163. height: 38px;
  6164. background: url("../../assets/images/homestead/selectionNext_icon.png")
  6165. no-repeat;
  6166. float: right;
  6167. margin-top: 2px;
  6168. }
  6169. }
  6170. .main_m {
  6171. overflow-y: auto;
  6172. padding: 10px 0;
  6173. // height: 300px;
  6174. flex: 1;
  6175. .flex_block {
  6176. height: 70px;
  6177. display: flex;
  6178. // justify-content: center; /* 相对父元素水平居中 */
  6179. align-items: center; /* 子元素相对父元素垂直居中 */
  6180. padding: 0 40px;
  6181. &.active {
  6182. box-shadow: 0px 0px 10px rgba(24, 45, 51, 0.5);
  6183. }
  6184. .name_text {
  6185. font-size: 28px;
  6186. flex: 0.5;
  6187. overflow: hidden; /*超出部分隐藏*/
  6188. white-space: nowrap; /*不换行*/
  6189. text-overflow: ellipsis; /*超出部分文字以...显示*/
  6190. }
  6191. .square_text {
  6192. font-size: 28px;
  6193. flex: 0.4;
  6194. }
  6195. .operation_mian {
  6196. flex: 0 0 150px;
  6197. .describe {
  6198. font-size: 20px;
  6199. padding: 6px 5px;
  6200. float: right;
  6201. color: #fff;
  6202. border-radius: 30px;
  6203. overflow: hidden;
  6204. text-overflow: ellipsis;
  6205. white-space: nowrap;
  6206. max-width: 150px;
  6207. &.yph {
  6208. background: #b026ff;
  6209. }
  6210. &.dlzdph {
  6211. background: #ff6f36;
  6212. }
  6213. &.ylz {
  6214. background: #7fff4c;
  6215. }
  6216. &.dlz {
  6217. background: rgb(255, 232, 76);
  6218. }
  6219. &.ylzdph {
  6220. background: #ff7dd0;
  6221. }
  6222. &.zy {
  6223. background: rgb(100, 30, 100);
  6224. }
  6225. &.xz {
  6226. background: rgb(60, 100, 180);
  6227. }
  6228. &.chdb {
  6229. background: #fe0303;
  6230. }
  6231. }
  6232. }
  6233. }
  6234. }
  6235. .footerBtn_wrap {
  6236. flex: 0 0 90px;
  6237. display: flex;
  6238. justify-content: center; /* 相对父元素水平居中 */
  6239. align-items: center; /* 子元素相对父元素垂直居中 */
  6240. .options {
  6241. flex: 1;
  6242. font-size: 38px;
  6243. display: flex;
  6244. justify-content: center; /* 相对父元素水平居中 */
  6245. align-items: center; /* 子元素相对父元素垂直居中 */
  6246. height: 90px;
  6247. &:first-child {
  6248. border-bottom-left-radius: 15px;
  6249. }
  6250. &.active {
  6251. background: #3cbf5b;
  6252. color: #fff;
  6253. }
  6254. }
  6255. }
  6256. }
  6257. .checkbox {
  6258. width: 200px;
  6259. margin: 30px auto;
  6260. }
  6261. .thead-checkbox {
  6262. background-color: lightgray;
  6263. }
  6264. .item-checkbox {
  6265. border: 1px solid darkgray;
  6266. }
  6267. .van-sticky{position: fixed;top: 0;right: 0; left: 0;z-index: 9999;}
  6268. .searchBar_wrap {
  6269. // display: none;
  6270. position: fixed;
  6271. left: 0;
  6272. bottom: 0;
  6273. width: 100%;
  6274. padding: 0px 16px 0px 13px;
  6275. background: #fff;
  6276. border-top-left-radius: 15px;
  6277. border-top-right-radius: 15px;
  6278. z-index: 9;
  6279. .searchBox{
  6280. height: 40vh;
  6281. overflow-y: scroll;
  6282. .van-cell{
  6283. /*&:first-child{*/
  6284. /* box-shadow: none;*/
  6285. /* margin:0;*/
  6286. /*}*/
  6287. box-shadow: 0px 0px 5px #cccccc;
  6288. border-radius: 15PX;
  6289. width: 98%;
  6290. margin: 0 auto;
  6291. margin-bottom: 0.35rem;
  6292. &:first-child{
  6293. margin-top: 5px;
  6294. }
  6295. }
  6296. .van-cell__title{
  6297. flex: 0.8;
  6298. p{
  6299. color: rgb(34, 183, 242);
  6300. .van-icon{
  6301. vertical-align: middle;
  6302. }
  6303. span{
  6304. vertical-align: middle;
  6305. &:nth-child(2){
  6306. overflow: hidden;
  6307. white-space: nowrap;
  6308. text-overflow: ellipsis;
  6309. display: inline-block;
  6310. width: 60%;
  6311. }
  6312. &:nth-child(3){
  6313. font-size: 0.25rem;
  6314. border-radius: 5PX;
  6315. padding: 5PX 15PX;
  6316. margin-left: 5%;
  6317. }
  6318. }
  6319. }
  6320. }
  6321. .van-cell__value{
  6322. flex: 0.2;
  6323. p{
  6324. font-size: 0.25rem;
  6325. display: inline-block;
  6326. border-radius: 1rem;
  6327. line-height: 1;
  6328. padding: 10%;
  6329. }
  6330. }
  6331. }
  6332. .actionBar_wrap {
  6333. display: flex;
  6334. position: absolute;
  6335. top: 0;
  6336. left: 0;
  6337. width: 100%;
  6338. height: 100%;
  6339. background: #fff;
  6340. border-top-left-radius: 15px;
  6341. border-top-right-radius: 15px;
  6342. .m_list {
  6343. flex: 1;
  6344. display: flex;
  6345. justify-content: center; /* 相对父元素水平居中 */
  6346. align-items: center; /* 子元素相对父元素垂直居中 */
  6347. .tensile,
  6348. .positioning,
  6349. .spacing,
  6350. .scale {
  6351. width: 76px;
  6352. height: 72px;
  6353. background: #ffffff;
  6354. border-radius: 8px;
  6355. box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.16);
  6356. .icon {
  6357. width: 76px;
  6358. height: 72px;
  6359. }
  6360. &.active {
  6361. background: #333;
  6362. &.tensile {
  6363. .icon {
  6364. background: url("../../assets/images/homestead/operation/tensile_active.png")
  6365. center center no-repeat;
  6366. background-size: 38px 50px;
  6367. }
  6368. }
  6369. &.positioning {
  6370. .icon {
  6371. background: url("../../assets/images/homestead/operation/positioning_active.png")
  6372. center center no-repeat;
  6373. background-size: 38px 48px;
  6374. }
  6375. }
  6376. &.spacing {
  6377. .icon {
  6378. background: url("../../assets/images/homestead/operation/spacing_active.png")
  6379. center center no-repeat;
  6380. background-size: 46px 46px;
  6381. }
  6382. }
  6383. &.scale {
  6384. .icon {
  6385. background: url("../../assets/images/homestead/operation/scale_active.png")
  6386. center center no-repeat;
  6387. background-size: 48px 48px;
  6388. }
  6389. }
  6390. }
  6391. }
  6392. .tensile {
  6393. .icon {
  6394. background: url("../../assets/images/homestead/operation/tensile.png")
  6395. center center no-repeat;
  6396. background-size: 38px 50px;
  6397. }
  6398. }
  6399. .positioning {
  6400. .icon {
  6401. background: url("../../assets/images/homestead/operation/positioning.png")
  6402. center center no-repeat;
  6403. background-size: 38px 48px;
  6404. }
  6405. }
  6406. .spacing {
  6407. .icon {
  6408. background: url("../../assets/images/homestead/operation/spacing.png")
  6409. center center no-repeat;
  6410. background-size: 46px 46px;
  6411. }
  6412. }
  6413. .scale {
  6414. .icon {
  6415. background: url("../../assets/images/homestead/operation/scale.png")
  6416. center center no-repeat;
  6417. background-size: 48px 48px;
  6418. }
  6419. }
  6420. .closes {
  6421. background: url("../../assets/images/homestead/searchBar_close.png")
  6422. no-repeat;
  6423. background-size: 100% 100%;
  6424. width: 72px;
  6425. height: 72px;
  6426. &.gray {
  6427. background: url("../../assets/images/homestead/searchBar_close_gray.png")
  6428. no-repeat;
  6429. background-size: 100% 100%;
  6430. }
  6431. }
  6432. .correct {
  6433. background: url("../../assets/images/homestead/searchBar_save.png")
  6434. no-repeat;
  6435. background-size: 100% 100%;
  6436. width: 72px;
  6437. height: 72px;
  6438. }
  6439. }
  6440. }
  6441. .searchBar_area {
  6442. flex: 1;
  6443. height: 80px;
  6444. background: #f1f1f1;
  6445. border: 1px solid #dfdfdf;
  6446. border-radius: 10px;
  6447. padding: 0 28px;
  6448. display: flex;
  6449. .bar_icon {
  6450. width: 50px;
  6451. height: 50px;
  6452. background: url("../../assets/images/homestead/searchBar_bar.png")
  6453. center center no-repeat;
  6454. background-size: 100% 100%;
  6455. margin-top: 14px;
  6456. margin-right: 15px;
  6457. }
  6458. .bar_ipt {
  6459. flex: 1;
  6460. input {
  6461. width: 100%;
  6462. height: 100%;
  6463. background: none;
  6464. border: 0 none;
  6465. font-size: 32px;
  6466. }
  6467. }
  6468. .bar_text {
  6469. flex: 0 0 80px;
  6470. font-size: 32px;
  6471. color: #333333;
  6472. font-family: PingFang SC, PingFang SC-Regular;
  6473. font-weight: 400;
  6474. display: flex;
  6475. justify-content: center; /* 相对父元素水平居中 */
  6476. align-items: center; /* 子元素相对父元素垂直居中 */
  6477. }
  6478. }
  6479. .searchBar_more {
  6480. flex: 0 0 80px;
  6481. background: url("../../assets/images/homestead/searchBar_add.png") center
  6482. center no-repeat;
  6483. background-size: 80% 80%;
  6484. margin-left: 15px;
  6485. }
  6486. }
  6487. </style>