移动端
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

assetMapOpen.vue 49 KiB

hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 1 año
hace 11 meses
hace 1 año
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 1 año
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
hace 11 meses
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140
  1. <template>
  2. <div class="homestead_main">
  3. <!--<div id="landMapDiv"></div>-->
  4. <div class="header_main"
  5. :style="`background-image:url(${require(showBtn?'@/assets/images/sunVillage_info/list_head.png':'@/assets/images/sunVillage_info/list_head_red.png')})`"
  6. >
  7. 资产地图公开
  8. <div class="return_btn" @click="onClickLeft"></div>
  9. </div>
  10. <div id="mapAll"> </div>
  11. <div id="info" style="display: none"></div>
  12. <div class="plotPremises_right" v-if="this.mapHaDataValue">
  13. <div class="land_information_main">
  14. <div class="area_information">
  15. <div class="mian">
  16. <div class="basic_information" v-if="mapHasDateStatus == 0">
  17. <div class="basic_block">
  18. <van-row>
  19. <van-col :span="4"><span class="title">资源编码:</span></van-col>
  20. <van-col :span="8"><span class="desc">{{ mapHasData.code }}</span></van-col>
  21. <van-col :span="4"><span class="title">资源名称:</span></van-col>
  22. <van-col :span="8"><span class="desc">{{ mapHasData.name }}</span></van-col>
  23. </van-row>
  24. <van-row>
  25. <van-col :span="4"><span class="title">资源类型:</span></van-col>
  26. <van-col :span="8"><span class="desc">{{ mapHasData.resourceType }}</span></van-col>
  27. <van-col :span="4"><span class="title">坐落位置:</span></van-col>
  28. <van-col :span="8"><span class="desc">{{ mapHasData.location }}</span></van-col>
  29. </van-row>
  30. <van-row>
  31. <van-col :span="4"><span class="title">东至:</span></van-col>
  32. <van-col :span="8"><span class="desc">{{ mapHasData.east }}</span></van-col>
  33. <van-col :span="4"><span class="title">西至:</span></van-col>
  34. <van-col :span="8"><span class="desc">{{ mapHasData.west }}</span></van-col>
  35. </van-row>
  36. <van-row>
  37. <van-col :span="4"><span class="title">南至:</span></van-col>
  38. <van-col :span="8"><span class="desc">{{ mapHasData.south }}</span></van-col>
  39. <van-col :span="4"><span class="title">北至:</span></van-col>
  40. <van-col :span="8"><span class="desc">{{ mapHasData.north }}</span></van-col>
  41. </van-row>
  42. <van-row>
  43. <van-col :span="4"><span class="title">总面积:</span></van-col>
  44. <van-col :span="8"><span class="desc">{{ mapHasData.totalArea }}</span></van-col>
  45. <van-col :span="4"><span class="title">资产状态:</span></van-col>
  46. <van-col :span="8"><span class="desc">{{ mapHasData.status }}</span></van-col>
  47. </van-row>
  48. <van-row>
  49. <van-col :span="4"><span class="title">使用情况:</span></van-col>
  50. <van-col :span="8"><span class="desc">{{ mapHasData.useType }}</span></van-col>
  51. <van-col :span="4"><span class="title">备注:</span></van-col>
  52. <van-col :span="8"><span class="desc">{{ mapHasData.remark }}</span></van-col>
  53. </van-row>
  54. <van-row>
  55. <van-col :span="24"><span class="title">附件图片:</span></van-col>
  56. </van-row>
  57. <van-row>
  58. <van-col :span="24" style="height: 120px;overflow-y: auto;">
  59. <div class="fileList">
  60. <template v-for="(item,index) in mapHasData.fileList">
  61. <a :href="item.url" v-if="item.url.indexOf('xlsx') > -1 || item.url.indexOf('xls') > -1">
  62. <img src="../../assets/images/homestead/icon_excel.jpg" alt="" style="width:100px;height: 100px;">
  63. </a>
  64. <a :href="item.url" v-else-if="item.url.indexOf('docx') > -1 || item.url.indexOf('dox') > -1">
  65. <img src="../../assets/images/homestead/icon_word.jpg" alt="" style="width:100px;height: 100px;">
  66. </a>
  67. <img v-else :src="item.url" alt="" @click="openImage(item.url)" style="width:100px;height: 100px;">
  68. </template>
  69. <van-empty v-if="mapHasData.fileList.length<1" description="暂无附件"></van-empty>
  70. </div>
  71. </van-col>
  72. </van-row>
  73. <div class="gl_main">
  74. <template v-if="!contractionVisible">
  75. <div class="headers">
  76. <div class="flex3">合同编码</div>
  77. <div class="flex3">合同名称</div>
  78. <div class="flex3">发包对象</div>
  79. <div class="flex3">承包款(元)</div>
  80. <div class="flex3">状态</div>
  81. </div>
  82. <div class="desc_main">
  83. <ul class="analysisTable_list">
  84. <!--1-->
  85. <li v-for="item in contractionList" class="flex_item" @click="viewContractionInfo(item)">
  86. <div class="flex3" @click="lookName(item.code)">{{item.code}}</div>
  87. <div class="flex3" @click="lookName(item.name)">{{item.name}}</div>
  88. <div class="flex3">{{item.secondParty}}</div>
  89. <div class="flex3">{{item.totalAmount}}</div>
  90. <div class="flex3">{{item.contractionStatus}}</div>
  91. </li>
  92. </ul>
  93. </div>
  94. </template>
  95. <template v-else>
  96. <div class="headers">
  97. <div>关联合同</div>
  98. <div class="back" @click="hideContractionInfo">&lt; 返回</div>
  99. </div>
  100. <van-row>
  101. <van-col :span="4"><span class="title">合同编码:</span></van-col>
  102. <van-col :span="8"><span class="desc">{{ contractionData.code }}</span></van-col>
  103. <van-col :span="4"><span class="title">合同名称:</span></van-col>
  104. <van-col :span="8"><span class="desc">{{ contractionData.name }}</span></van-col>
  105. </van-row>
  106. <van-row>
  107. <van-col :span="4"><span class="title">签订日期:</span></van-col>
  108. <van-col :span="8"><span class="desc">{{ contractionData.buildingTime }}</span></van-col>
  109. <van-col :span="4"><span class="title">合同类型:</span></van-col>
  110. <van-col :span="8"><span class="desc">{{ contractionData.assetType }}</span></van-col>
  111. </van-row>
  112. <van-row>
  113. <van-col :span="4"><span class="title">开始时间:</span></van-col>
  114. <van-col :span="8"><span class="desc">{{ contractionData.startTime }}</span></van-col>
  115. <van-col :span="4"><span class="title">结束时间:</span></van-col>
  116. <van-col :span="8"><span class="desc">{{ contractionData.endTime }}</span></van-col>
  117. </van-row>
  118. <van-row>
  119. <van-col :span="4"><span class="title">承包价款:</span></van-col>
  120. <van-col :span="8"><span class="desc">{{ contractionData.totalAmount }}</span></van-col>
  121. <van-col :span="4"><span class="title">承包年限:</span></van-col>
  122. <van-col :span="8"><span class="desc">{{ contractionData.contractYears }}</span></van-col>
  123. </van-row>
  124. <van-row>
  125. <van-col :span="24"><span class="title">附件图片:</span></van-col>
  126. </van-row>
  127. <van-row>
  128. <van-col :span="24" style="height: 120px;overflow-y: auto;">
  129. <div class="fileList">
  130. <template v-for="(item,index) in contractionAttachmentList">
  131. <a :href="item.url" v-if="item.url.indexOf('xlsx') > -1 || item.url.indexOf('xls') > -1">
  132. <img src="../../assets/images/homestead/icon_excel.jpg" alt="" style="width:100px;height: 100px;">
  133. </a>
  134. <a :href="item.url" v-else-if="item.url.indexOf('docx') > -1 || item.url.indexOf('dox') > -1">
  135. <img src="../../assets/images/homestead/icon_word.jpg" alt="" style="width:100px;height: 100px;">
  136. </a>
  137. <img v-else :src="item.url" alt="" @click="openImage(item.url)" style="width:100px;height: 100px;">
  138. </template>
  139. <van-empty v-if="contractionAttachmentList.length<1" description="暂无附件"></van-empty>
  140. </div>
  141. </van-col>
  142. </van-row>
  143. </template>
  144. </div>
  145. <!-- <pagination v-show="total>0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList"/>-->
  146. </div>
  147. </div>
  148. <div class="basic_information" v-if="mapHasDateStatus == 1">
  149. <div class="basic_block">
  150. <van-row>
  151. <van-col :span="4"><span class="title">资产编码:</span></van-col>
  152. <van-col :span="8"><span class="desc">{{ mapHasData.code }}</span></van-col>
  153. <van-col :span="4"><span class="title">资产名称:</span></van-col>
  154. <van-col :span="8"><span class="desc">{{ mapHasData.name }}</span></van-col>
  155. </van-row>
  156. <van-row>
  157. <van-col :span="4"><span class="title">资产类别:</span></van-col>
  158. <van-col :span="8"><span class="desc">{{ mapHasData.assetType }}</span></van-col>
  159. <van-col :span="4"><span class="title">经营属性:</span></van-col>
  160. <van-col :span="8"><span class="desc">{{ mapHasData.operationType }}</span></van-col>
  161. </van-row>
  162. <van-row>
  163. <van-col :span="4"><span class="title">增加方式:</span></van-col>
  164. <van-col :span="8"><span class="desc">{{ mapHasData.addType }}</span></van-col>
  165. <van-col :span="4"><span class="title">构建时间:</span></van-col>
  166. <van-col :span="8"><span class="desc">{{ mapHasData.buildTime }}</span></van-col>
  167. </van-row>
  168. <van-row>
  169. <van-col :span="4"><span class="title">坐落位置:</span></van-col>
  170. <van-col :span="8"><span class="desc">{{ mapHasData.location }}</span></van-col>
  171. <van-col :span="4"><span class="title">规格型号:</span></van-col>
  172. <van-col :span="8"><span class="desc">{{ mapHasData.specification }}</span></van-col>
  173. </van-row>
  174. <van-row>
  175. <van-col :span="4"><span class="title">供应商:</span></van-col>
  176. <van-col :span="8"><span class="desc">{{ mapHasData.supplier }}</span></van-col>
  177. <van-col :span="4"><span class="title">使用情况:</span></van-col>
  178. <van-col :span="8"><span class="desc">{{ mapHasData.useType }}</span></van-col>
  179. </van-row>
  180. <van-row>
  181. <van-col :span="4"><span class="title">数量/面积:</span></van-col>
  182. <van-col :span="8"><span class="desc">{{ mapHasData.quantity }}</span></van-col>
  183. <van-col :span="4"><span class="title">计量单位:</span></van-col>
  184. <van-col :span="8"><span class="desc">{{ mapHasData.unit }}</span></van-col>
  185. </van-row>
  186. <van-row>
  187. <van-col :span="4"><span class="title">原值:</span></van-col>
  188. <van-col :span="8"><span class="desc">{{ mapHasData.originalValue }}</span></van-col>
  189. <van-col :span="4"><span class="title">资产状态:</span></van-col>
  190. <van-col :span="8"><span class="desc">{{ mapHasData.assetStatus }}</span></van-col>
  191. </van-row>
  192. <van-row>
  193. <van-col :span="24"><span class="title">附件图片:</span></van-col>
  194. </van-row>
  195. <van-row>
  196. <van-col :span="24" style="height: 120px;overflow-y: auto;">
  197. <div class="fileList">
  198. <template v-for="(item,index) in mapHasData.fileList">
  199. <a :href="item.url" v-if="item.url.indexOf('xlsx') > -1 || item.url.indexOf('xls') > -1">
  200. <img src="../../assets/images/homestead/icon_excel.jpg" alt="" style="width:100px;height: 100px;">
  201. </a>
  202. <a :href="item.url" v-else-if="item.url.indexOf('docx') > -1 || item.url.indexOf('dox') > -1">
  203. <img src="../../assets/images/homestead/icon_word.jpg" alt="" style="width:100px;height: 100px;">
  204. </a>
  205. <img v-else :src="item.url" alt="" @click="openImage(item.url)" style="width:100px;height: 100px;">
  206. </template>
  207. <van-empty v-if="mapHasData.fileList.length<1" description="暂无附件"></van-empty>
  208. </div>
  209. </van-col>
  210. </van-row>
  211. <div class="gl_main">
  212. <template v-if="!contractionVisible">
  213. <div class="headers">
  214. <div class="flex3">合同编码</div>
  215. <div class="flex3">合同名称</div>
  216. <div class="flex3">发包对象</div>
  217. <div class="flex3">承包款(元)</div>
  218. <div class="flex3">状态</div>
  219. </div>
  220. <div class="desc_main">
  221. <ul class="analysisTable_list">
  222. <!--1-->
  223. <li v-for="item in contractionList" class="flex_item" @click="viewContractionInfo(item)">
  224. <div class="flex3" @click="lookName(item.code)">{{item.code}}</div>
  225. <div class="flex3" @click="lookName(item.name)">{{item.name}}</div>
  226. <div class="flex3">{{item.secondParty}}</div>
  227. <div class="flex3" >{{item.totalAmount}}</div>
  228. <div class="flex3">{{item.contractionStatus}}</div>
  229. </li>
  230. </ul>
  231. </div>
  232. </template>
  233. <template v-else>
  234. <div class="headers">
  235. <div>关联合同</div>
  236. <div class="back" @click="hideContractionInfo">&lt; 返回</div>
  237. </div>
  238. <van-row>
  239. <van-col :span="4"><span class="title">合同编码:</span></van-col>
  240. <van-col :span="8"><span class="desc">{{ contractionData.code }}</span></van-col>
  241. <van-col :span="4"><span class="title">合同名称:</span></van-col>
  242. <van-col :span="8"><span class="desc">{{ contractionData.name }}</span></van-col>
  243. </van-row>
  244. <van-row>
  245. <van-col :span="4"><span class="title">签订日期:</span></van-col>
  246. <van-col :span="8"><span class="desc">{{ contractionData.buildingTime }}</span></van-col>
  247. <van-col :span="4"><span class="title">合同类型:</span></van-col>
  248. <van-col :span="8"><span class="desc">{{ contractionData.assetType }}</span></van-col>
  249. </van-row>
  250. <van-row>
  251. <van-col :span="4"><span class="title">开始时间:</span></van-col>
  252. <van-col :span="8"><span class="desc">{{ contractionData.startTime }}</span></van-col>
  253. <van-col :span="4"><span class="title">结束时间:</span></van-col>
  254. <van-col :span="8"><span class="desc">{{ contractionData.endTime }}</span></van-col>
  255. </van-row>
  256. <van-row>
  257. <van-col :span="4"><span class="title">承包价款:</span></van-col>
  258. <van-col :span="8"><span class="desc">{{ contractionData.totalAmount }}</span></van-col>
  259. <van-col :span="4"><span class="title">承包年限:</span></van-col>
  260. <van-col :span="8"><span class="desc">{{ contractionData.contractYears }}</span></van-col>
  261. </van-row>
  262. <van-row>
  263. <van-col :span="24"><span class="title">附件图片:</span></van-col>
  264. </van-row>
  265. <van-row>
  266. <van-col :span="24" style="height: 120px;overflow-y: auto;">
  267. <div class="fileList">
  268. <template v-for="(item,index) in contractionAttachmentList">
  269. <a :href="item.url" v-if="item.url.indexOf('xlsx') > -1 || item.url.indexOf('xls') > -1">
  270. <img src="../../assets/images/homestead/icon_excel.jpg" alt="" style="width:100px;height: 100px;">
  271. </a>
  272. <a :href="item.url" v-else-if="item.url.indexOf('docx') > -1 || item.url.indexOf('dox') > -1">
  273. <img src="../../assets/images/homestead/icon_word.jpg" alt="" style="width:100px;height: 100px;">
  274. </a>
  275. <img v-else :src="item.url" alt="" @click="openImage(item.url)" style="width:100px;height: 100px;">
  276. </template>
  277. <van-empty v-if="contractionAttachmentList.length<1" description="暂无附件"></van-empty>
  278. </div>
  279. </van-col>
  280. </van-row>
  281. </template>
  282. </div>
  283. </div>
  284. <!--<div class="basic_block">
  285. <span class="title">折旧科目:</span>
  286. <span class="desc">{{ mapHasData.depreciationSubject }}</span>
  287. </div>
  288. <div class="basic_block">
  289. <span class="title">折旧费用科目:</span>
  290. <span class="desc">{{ mapHasData.depreciationFeeSubject }}</span>
  291. </div>
  292. <div class="basic_block">
  293. <span class="title">资产清理科目:</span>
  294. <span class="desc">{{ mapHasData.fixedSubject }}</span>
  295. </div>
  296. <div class="basic_block">
  297. <span class="title">资产清理额:</span>
  298. <span class="desc">{{ mapHasData.fixedValue }}</span>
  299. </div>
  300. <div class="basic_block">
  301. <span class="title">购置凭证ID:</span>
  302. <span class="desc">{{ mapHasData.voucherId }}</span>
  303. </div>-->
  304. </div>
  305. </div>
  306. </div>
  307. </div>
  308. </div>
  309. <van-dialog v-model="dialogVisible">
  310. <img width="100%" :src="dialogImageUrl" alt="">
  311. </van-dialog>
  312. </div>
  313. </template>
  314. <style scoped lang="scss">
  315. .homestead_main {
  316. height: 100vh;
  317. display: flex;
  318. display: -webkit-flex;
  319. display: -ms-flexbox;
  320. display: -moz-box;
  321. flex-direction: column;
  322. position: relative;
  323. }
  324. #mapAll {
  325. height: 100vh;
  326. position: absolute;
  327. left: 0;
  328. top: 0;
  329. width: 100vw;
  330. }
  331. .header_main{
  332. height: 116px;
  333. background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat;
  334. background-size: 100% 100%;
  335. position: fixed;
  336. top: 0;
  337. left: 0;
  338. width: 100%;
  339. font-size: 36px;
  340. line-height: 116px;
  341. text-align: center;
  342. color: #fff;
  343. position: fixed;
  344. z-index: 9999;
  345. .return_btn{
  346. width: 24px;
  347. height: 43.2px;
  348. background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
  349. background-size: 20px 36px;
  350. position: absolute;
  351. left: 38px;
  352. top: 36px;
  353. }
  354. .add_btn{
  355. width: 56.4px;
  356. height: 40.8px;
  357. background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;
  358. background-size: 47px 34px;
  359. position: absolute;
  360. right: 38px;
  361. top: 36px;
  362. }
  363. }
  364. .fileList{
  365. img{
  366. width: 8vw;
  367. height: 8vw;
  368. margin-right: 20px;
  369. }
  370. }
  371. .flex3 {
  372. flex: 0.5;
  373. overflow: hidden; /*超出部分隐藏*/
  374. white-space: nowrap; /*不换行*/
  375. text-overflow: ellipsis; /*超出部分文字以...显示*/
  376. }
  377. .plotPremises_right {
  378. width: 94%;
  379. position: fixed;
  380. z-index: 1001;
  381. top: 54%;
  382. transform: translateY(-50%);
  383. right: 3%;
  384. display: flex;
  385. // display: none;
  386. min-width: 300px;
  387. /*height: calc(100% - 104px);*/
  388. flex-direction: column;
  389. .topTrimLine {
  390. width: 100%;
  391. height: 8px;
  392. background: url("../../assets/images/homestead/header_border.png")
  393. no-repeat;
  394. background-size: 100% 100%;
  395. position: absolute;
  396. top: -4px;
  397. left: 0;
  398. }
  399. .land_information_main {
  400. flex: 1;
  401. // align-items: center;
  402. .area_information {
  403. // margin-bottom: 3%;
  404. position: relative;
  405. .mian {
  406. background: rgba(25, 29, 24, 0.7);
  407. /*background: rgba(255, 255, 255, 0.7);*/
  408. // background: url("../../assets/images/dataScreen/plotPremises/left_top_img.png")
  409. // no-repeat;
  410. // background-size: 100% 100%;
  411. padding: 3%;
  412. flex: 1;
  413. display: flex;
  414. flex-direction: column;
  415. .area_title {
  416. margin: 0;
  417. font-size: 22px;
  418. color: #38da94;
  419. }
  420. .basic_information {
  421. position: relative;
  422. flex: 1;
  423. display: flex;
  424. flex-direction: column;
  425. .basic_block {
  426. font-size: 15px;
  427. color: #47c68f;
  428. flex: 1;
  429. .van-row{
  430. display:flex;
  431. flex-wrap: wrap;
  432. .van-col{
  433. padding: 1% 0 1% 2%;
  434. border-top: 1px solid #fff;
  435. border-left: 1px solid #fff;
  436. &:last-child{
  437. border-right: 1px solid #fff;
  438. }
  439. }
  440. &:last-child{
  441. .van-col{
  442. &:last-child{
  443. border-bottom: 1px solid #fff;
  444. }
  445. }
  446. }
  447. }
  448. .title {
  449. color: #fff;
  450. padding-right: 8px;
  451. }
  452. }
  453. .patternmaking {
  454. position: absolute;
  455. right: 2%;
  456. bottom: 16%;
  457. .img_block {
  458. margin-top: 8px;
  459. &:first-child {
  460. margin-top: 0;
  461. }
  462. }
  463. p {
  464. margin: 0;
  465. font-size: 0;
  466. img {
  467. width: 78px;
  468. height: 60px;
  469. }
  470. }
  471. }
  472. .gl_main{
  473. margin-top: .8vh;
  474. height: 38.15vh;
  475. padding:0.92vh 0 0 0;
  476. .headers {
  477. height: 3.24vh;
  478. font-size: 1.48vh;
  479. color: #0befca;
  480. text-align: center;
  481. display: flex;
  482. justify-content: center;
  483. align-items: center;
  484. background: rgba(11,239,202,.3);
  485. padding-right: 0.53vw;
  486. margin-bottom: 1vh;
  487. position: relative;
  488. .flex_left{
  489. text-align: left;
  490. padding-left: 0.83vw;
  491. }
  492. .back {
  493. cursor: pointer;
  494. position: absolute;
  495. left: 0.83vw;
  496. }
  497. }
  498. .desc_main{
  499. height: 21.5vh;
  500. overflow-y: scroll;
  501. padding-right: 0.3vw;
  502. box-sizing:border-box;
  503. .analysisTable_list {
  504. margin: 0;
  505. padding: 0;
  506. flex: 1;
  507. display: flex;
  508. flex-direction: column;
  509. .flex_left{
  510. text-align: left;
  511. padding-left: 0.83vw;
  512. box-sizing:border-box;
  513. }
  514. .flex_item {
  515. height: 2.77vh;
  516. list-style: none;
  517. margin: 0;
  518. display: flex;
  519. justify-content: center;
  520. align-items: center;
  521. text-align: center;
  522. color: #fff;
  523. font-size: 1.29vh;
  524. position: relative;
  525. cursor: pointer;
  526. // border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  527. // &:hover {
  528. // background: rgba(8, 85, 255, 0.6);
  529. // }
  530. &:nth-child(2n){
  531. background: rgba(53, 125, 250, 0.1);
  532. }
  533. }
  534. }
  535. }
  536. }
  537. }
  538. .area_data {
  539. padding: 4% 0;
  540. display: flex;
  541. justify-content: space-between;
  542. flex-wrap: wrap;
  543. border-bottom: 1px solid #62655d;
  544. .details_block {
  545. width: 33.33%;
  546. &.line {
  547. margin-bottom: 2%;
  548. }
  549. p {
  550. margin: 0;
  551. }
  552. .m_title {
  553. color: #bbb;
  554. font-size: 12px;
  555. padding-bottom: 5px;
  556. }
  557. .m_desc {
  558. color: #fff;
  559. font-size: 14px;
  560. }
  561. }
  562. }
  563. .farmhouse_table {
  564. padding: 4% 0 2%;
  565. }
  566. }
  567. }
  568. }
  569. }
  570. </style>
  571. <script>
  572. import {
  573. getPermanentList,
  574. getResourceList,
  575. assetPropertyDetail,
  576. assetResourceDetail,
  577. openAttachmentList as attachmentList
  578. } from "@/api/sunVillage_info/fixedAssets";
  579. import {getQueryLand} from "@/api/sunVillage_info/homestead/application";
  580. import { getConfigKey } from "@/api/system/config";
  581. export default {
  582. components: {
  583. getPermanentList,
  584. getResourceList,
  585. getQueryLand
  586. },
  587. data() {
  588. return {
  589. situationW: 70,
  590. //地图判断
  591. openMap: false,
  592. showBtn: false,
  593. mapTheGeomId: null,
  594. mapTheGeomResourceId: null,
  595. drawInsert:null,
  596. mapHasData:{},
  597. contractionList:[],
  598. //合同状态字典
  599. contractionStatuOptions:[],
  600. mapHaDataValue:false,
  601. mapHasDateStatus: 0, //0资源资产 1固定资产
  602. dialogVisible:false,
  603. dialogImageUrl:'',
  604. mapGeoServerUrl: "", // geoserver地址
  605. villageBorderLayerName: "", // 乡镇边界图层名称
  606. contractionData: {},
  607. contractionAttachmentList: [],
  608. contractionVisible:false,
  609. };
  610. },
  611. created() {
  612. // 获取geoserver的地址
  613. this.getGeoServerUrl();
  614. // 获取村边界的图层名称
  615. this.getVillageBorderLayerName();
  616. },
  617. mounted() {
  618. let mapTheGeomAll =this.$cookies.get("bookId");
  619. mapTheGeomAll = 166;
  620. console.info(mapTheGeomAll);
  621. getPermanentList(mapTheGeomAll).then((response) => {
  622. if (response.code == 200) {
  623. this.mapTheGeomId = response.data;
  624. }
  625. });
  626. getResourceList(mapTheGeomAll).then((response) => {
  627. if (response.code == 200) {
  628. this.mapTheGeomResourceId = response.data;
  629. setTimeout(() => {
  630. this.GetMapsInit();
  631. }, 500);
  632. }
  633. });
  634. },
  635. methods: {
  636. // 获取geoserver的地址
  637. getGeoServerUrl() {
  638. getConfigKey("system.geoServer.url").then(response => {
  639. this.mapGeoServerUrl = response.msg;
  640. });
  641. },
  642. // 获取村边界的图层名称
  643. getVillageBorderLayerName() {
  644. getConfigKey("geoserver.layer.villageBorder").then(response => {
  645. this.villageBorderLayerName = response.msg;
  646. });
  647. },
  648. openImage(url){
  649. this.dialogImageUrl = url;
  650. this.dialogVisible = true;
  651. },
  652. lookName(val){
  653. this.$toast(val);
  654. },
  655. //地图加载 -----start
  656. GetMapsInit() {
  657. this.getDicts("contraction_status").then((response) => {
  658. this.contractionStatuOptions = response.data;
  659. });
  660. //加载地图编辑
  661. var that = this;
  662. var map;
  663. //矢量标注样式设置函数,设置image为图标ol.style.Icon
  664. function createLabelStyle() {
  665. return new ol.style.Style({
  666. image: new ol.style.Icon({
  667. //设置图标偏移
  668. anchor: [0.5, 1],
  669. //标注样式的起点位置
  670. anchorOrigin: "top-right",
  671. //X方向单位:分数
  672. anchorXUnits: "fraction",
  673. //Y方向单位:像素
  674. anchorYUnits: "pixels",
  675. //偏移起点位置的方向
  676. offsetOrigin: "top-right",
  677. //透明度
  678. opacity: 0.9,
  679. //图片路径
  680. src: require("../../assets/images/homestead/mark.png"),
  681. }),
  682. text: new ol.style.Text({
  683. textAlign: "center", //位置
  684. textBaseline: "middle", //基准线
  685. font: "normal 12px 微软雅黑", //文字样式
  686. //text: "标注点", //文本内容
  687. fill: new ol.style.Fill({
  688. //文本填充样式(即文字颜色)
  689. color: "#ff0000",
  690. }),
  691. }),
  692. zIndex: 9999,
  693. });
  694. }
  695. // document.getElementById("mapAll").innerHTML = '';
  696. var hc_land;
  697. var vector_drawing;
  698. var projection = new ol.proj.Projection({
  699. //地图投影类型
  700. code: "EPSG:3857",
  701. units: "degrees",
  702. //extent:extent
  703. });
  704. var aerial = new ol.layer.Tile({
  705. source: new ol.source.XYZ({
  706. url: "http://t0.tianditu.gov.cn/img_w/wmts?" +
  707. "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
  708. "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=cc4aba6e967096098249efa069733067",
  709. }),
  710. isGroup: true,
  711. name: "卫星影像图",
  712. });
  713. var yingxzi = new ol.layer.Tile({
  714. source: new ol.source.XYZ({
  715. url: "https://t0.tianditu.gov.cn/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk=cc4aba6e967096098249efa069733067",
  716. }),
  717. isGroup: true,
  718. name: "天地图文字标注--卫星影像图",
  719. });
  720. //加载地图
  721. map = new ol.Map({
  722. controls: ol.control.defaults({attribution: false, zoom: false, rotate: false}).extend([]), //隐藏放大缩小按钮
  723. layers: [aerial, yingxzi],
  724. projection: projection,
  725. target: "mapAll",
  726. view: new ol.View({
  727. //center: ol.proj.fromLonLat([115.452752, 31.789033]),
  728. zoom: 15,
  729. minZoom: 0, //地图缩小限制
  730. maxZoom: 18.3, //地图放大限制
  731. }),
  732. });
  733. // 添加村边界
  734. let mapBorder = new ol.layer.Image({
  735. source: new ol.source.ImageWMS({
  736. url: this.mapGeoServerUrl + '/wms',
  737. params: {
  738. LAYERS: this.villageBorderLayerName,
  739. cql_filter: "dept_id = '" + this.$cookies.get("deptId") + "'",
  740. SRID: 3857,
  741. },
  742. }),
  743. name: 'villageBorderLayer'
  744. });
  745. map.addLayer(mapBorder);
  746. //判断当前账套是否有数据
  747. var mapTalkAbout = true;
  748. //图层查询资源性资产定位开始 ---------start
  749. if(this.mapTheGeomResourceId.length >0) {
  750. for (var i = 0; this.mapTheGeomResourceId.length > i; i++) {
  751. if (this.mapTheGeomResourceId[i] !=null && this.mapTheGeomResourceId[i].theGeom != null && this.mapTheGeomResourceId[i].theGeom != "") {
  752. mapTalkAbout =false;
  753. hc_land = new ol.layer.Vector({
  754. title: "add Layer",
  755. source: new ol.source.Vector({
  756. projection: projection,
  757. features: new ol.format.GeoJSON().readFeatures("{\n" +
  758. " \"type\": \"Feature\",\n" +
  759. " \"geometry\":" + this.mapTheGeomResourceId[i].theGeom + ", \"properties\":" + JSON.stringify(this.mapTheGeomResourceId[i]) + "}"),
  760. }),
  761. style: new ol.style.Style({
  762. fill: new ol.style.Fill({
  763. //矢量图层填充颜色,以及透明度
  764. color: "rgba(204, 255, 204,0.3)",
  765. }),
  766. stroke: new ol.style.Stroke({
  767. //边界样式
  768. color: "#47c68f",
  769. width: 3,
  770. }),
  771. }),
  772. });
  773. map.addLayer(hc_land);
  774. var maxXMap = hc_land.values_.source.featuresRtree_.rbush_.data.maxX;
  775. var maxYMap = hc_land.values_.source.featuresRtree_.rbush_.data.maxY;
  776. var minXMap = hc_land.values_.source.featuresRtree_.rbush_.data.minX;
  777. var minYMap = hc_land.values_.source.featuresRtree_.rbush_.data.minY;
  778. //定位查询位置
  779. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  780. map.getView().animate({
  781. // 只设置需要的属性即可
  782. center: center, // 中心点
  783. zoom: 15.8, // 缩放级别
  784. rotation: undefined, // 缩放完成view视图旋转弧度
  785. duration: 1000, // 缩放持续时间,默认不需要设置
  786. });
  787. }
  788. }
  789. }
  790. //图层查询资源性资产定位开始 ---------end
  791. //图层查询固定资产定位开始 ---------start
  792. if(this.mapTheGeomId.length >0) {
  793. for (var i = 0; this.mapTheGeomId.length > i; i++) {
  794. if (this.mapTheGeomId[i] != null && this.mapTheGeomId[i].theGeom != null && this.mapTheGeomId[i].theGeom != "") {
  795. mapTalkAbout =false;
  796. var theGeomMap = this.mapTheGeomId[i].theGeom.replace("Point", "MultiPolygon");
  797. var pointLeft = theGeomMap.replace("[", "[[[[");
  798. var pointRight = pointLeft.replace("]", "]]]]");
  799. hc_land = new ol.layer.Vector({
  800. title: "add Layer",
  801. source: new ol.source.Vector({
  802. projection: projection,
  803. features: new ol.format.GeoJSON().readFeatures("{\n" +
  804. " \"type\": \"Feature\",\n" +
  805. " \"geometry\":" + pointRight +", \"properties\":" + JSON.stringify(this.mapTheGeomId[i]) + "}"),
  806. }),
  807. style: new ol.style.Style({
  808. fill: new ol.style.Fill({
  809. //矢量图层填充颜色,以及透明度
  810. color: "rgba(204, 255, 204,0.3)",
  811. }),
  812. stroke: new ol.style.Stroke({
  813. //边界样式
  814. color: "#47c68f",
  815. width: 3,
  816. }),
  817. }),
  818. });
  819. map.addLayer(hc_land);
  820. var maxXMap = hc_land.values_.source.featuresRtree_.rbush_.data.maxX;
  821. var maxYMap = hc_land.values_.source.featuresRtree_.rbush_.data.maxY;
  822. var minXMap = hc_land.values_.source.featuresRtree_.rbush_.data.minX;
  823. var minYMap = hc_land.values_.source.featuresRtree_.rbush_.data.minY;
  824. //定位查询位置
  825. var center = ol.extent.getCenter([maxXMap, maxYMap, minXMap, minYMap]); //获取边界区域的中心位置
  826. var newcenterFeature = new ol.Feature({
  827. geometry: new ol.geom.Point(center), //几何信息
  828. name: "标注点",
  829. properties: hc_land.values_.source.featuresRtree_.rbush_.data.children
  830. });
  831. var sourceMapLook = new ol.source.Vector({wrapX: false});
  832. vector_drawing = new ol.layer.Vector({
  833. source: sourceMapLook,
  834. });
  835. map.addLayer(vector_drawing);
  836. newcenterFeature.setStyle(createLabelStyle()); //设置要素样式
  837. sourceMapLook.addFeature(newcenterFeature);
  838. map.getView().animate({
  839. // 只设置需要的属性即可
  840. center: center, // 中心点
  841. zoom: 15.8, // 缩放级别
  842. rotation: undefined, // 缩放完成view视图旋转弧度
  843. duration: 1000, // 缩放持续时间,默认不需要设置
  844. });
  845. }
  846. }
  847. }
  848. //图层查询固定资产定位结束 ---------end
  849. //点击查询详细信息
  850. map.on("singleclick", function (evt) {
  851. let feature = map.forEachFeatureAtPixel(
  852. evt.pixel,
  853. (feature) => feature
  854. );
  855. if(feature) {
  856. var ifConsole = feature.values_.name;
  857. if (ifConsole !="标注点") {
  858. let obj = {};
  859. assetResourceDetail(feature.values_.id, {translate_dict: 1, getAttachments: true,}).then((resp) => {
  860. that.contractionList = resp.data.params.contractionAssetList || [];
  861. that.$set(obj, 'fileList', resp.data.params.attachments.map(rr=>{
  862. return {
  863. url:'/api'+rr.fileUrl
  864. };
  865. }));
  866. that.contractionData = {};
  867. that.contractionAttachmentList = [];
  868. that.contractionVisible = false;
  869. that.mapHaDataValue = true;
  870. });
  871. that.mapHasDateStatus = 0;
  872. obj.code = feature.values_.code;//资源编码
  873. obj.name = feature.values_.name;//资源名称
  874. obj.totalArea = feature.values_.totalArea; //总面积
  875. obj.location = feature.values_.location; //坐落位置
  876. obj.east = feature.values_.east; //东至
  877. obj.west = feature.values_.west; //西至
  878. obj.south = feature.values_.south; //南至
  879. obj.north = feature.values_.north; //北至
  880. obj.sumArea = feature.values_.sumArea; //未利用地=集体经营+出租经营+其他经营
  881. obj.groupArea = feature.values_.groupArea; //面积-集体经营
  882. obj.groupValue = feature.values_.groupValue; //年收益-集体经营
  883. obj.rentArea = feature.values_.rentArea; //面积-出租经营(合同写入的)
  884. obj.rentValue = feature.values_.rentValue; //年租金-出租经营(合同写入的)
  885. obj.rentLessee = feature.values_.rentLessee; //承租人-出租经营(合同写入的)
  886. obj.rentStartTime = feature.values_.rentStartTime; //开始时间-出租经营(合同写入的)
  887. obj.rentEndTime = feature.values_.rentEndTime; //到期时间-出租经营(合同写入的)
  888. obj.otherArea = feature.values_.otherArea; //面积-其他经营
  889. obj.otherValue = feature.values_.otherValue; //年收益-其他经营
  890. obj.farmerArea = feature.values_.farmerArea; //已承包到户总面积
  891. obj.circulationArea = feature.values_.circulationArea; //面积-流转入集体统一经营
  892. obj.circulationValue = feature.values_.circulationValue; //年收益-流转入集体统一经营
  893. obj.investmentArea = feature.values_.investmentArea; //面积-对外投资
  894. obj.investmentValue = feature.values_.investmentValue; //年收益-对外投资
  895. obj.investmentLessee = feature.values_.investmentLessee; //投资对象-对外投资
  896. obj.investmentStartTime = feature.values_.investmentStartTime; //开始时间-对外投资
  897. obj.investmentEndTime = feature.values_.investmentEndTime; //到期时间-对外投资
  898. obj.resourceType = feature.values_.resourceType; //资产类型
  899. obj.status = feature.values_.status; //资产状态
  900. obj.useType = feature.values_.useType; //使用情况
  901. obj.remark = feature.values_.remark; //备注
  902. //资源资产字典项
  903. that.getDicts("resource_type").then(response => {
  904. var resourceTypeOptions = response.data;
  905. if(obj.resourceType !=null && obj.resourceType !="") {
  906. for (var i = 0; resourceTypeOptions.length > i; i++) {
  907. if (obj.resourceType == resourceTypeOptions[i].dictValue) {
  908. obj.resourceType = resourceTypeOptions[i].dictLabel;
  909. break;
  910. }
  911. }
  912. }
  913. });
  914. //使用情况字典项
  915. that.getDicts("use_type").then(response => {
  916. var useTypeOptions = response.data;
  917. if(obj.useType !=null && obj.useType !="") {
  918. for (var i = 0; useTypeOptions.length > i; i++) {
  919. if (obj.useType == useTypeOptions[i].dictValue) {
  920. obj.useType = useTypeOptions[i].dictLabel;
  921. break;
  922. }
  923. }
  924. }
  925. });
  926. //资产状态字典项
  927. that.getDicts("sys_normal_disable").then(response => {
  928. var statusOptions = response.data;
  929. if(obj.status !=null && obj.status !="") {
  930. for (var i = 0; statusOptions.length > i; i++) {
  931. if (obj.status == statusOptions[i].dictValue) {
  932. obj.status = statusOptions[i].dictLabel;
  933. break;
  934. }
  935. }
  936. }
  937. });
  938. console.log(obj)
  939. that.mapHasData = obj;
  940. } else {
  941. let obj = {};
  942. assetPropertyDetail(feature.values_.properties[0].value.values_.id, {translate_dict: 1, getAttachments: true,}).then((resp) => {
  943. that.contractionList = resp.data.params.contractionAssetList || [];
  944. that.$set(obj, 'fileList', resp.data.params.attachments.map(rr=>{
  945. return {
  946. url:'/api'+rr.fileUrl
  947. };
  948. }));
  949. that.contractionData = {};
  950. that.contractionAttachmentList = [];
  951. that.contractionVisible = false;
  952. that.mapHaDataValue = true;
  953. });
  954. that.mapHasDateStatus = 1;
  955. obj.code = feature.values_.properties[0].value.values_.code;//资源编码
  956. obj.name = feature.values_.properties[0].value.values_.name;//资源名称
  957. obj.buildTime = feature.values_.properties[0].value.values_.buildTime; //构建时间
  958. obj.location = feature.values_.properties[0].value.values_.location; //坐落位置
  959. obj.specification = feature.values_.properties[0].value.values_.specification; //规格型号
  960. obj.supplier = feature.values_.properties[0].value.values_.supplier; //供应商
  961. obj.quantity = feature.values_.properties[0].value.values_.quantity; //数量/建筑面积
  962. //obj.unit = feature.values_.properties[0].value.values_.unit; //计量单位
  963. obj.originalValue = feature.values_.properties[0].value.values_.originalValue; //原值
  964. obj.netValue = feature.values_.properties[0].value.values_.netValue; //净值(原值-累计折旧)
  965. obj.residualsRate = feature.values_.properties[0].value.values_.residualsRate; //残值率 N%
  966. obj.netSalvage = feature.values_.properties[0].value.values_.netSalvage; //净残值(原值*残值率)
  967. obj.expectedYears = feature.values_.properties[0].value.values_.expectedYears; //预计使用年数
  968. obj.perYearDepreciationValue = feature.values_.perYearDepreciationValue; //每年折旧额:(原值-净残值)/ 预计使用年数
  969. obj.depreciationYears = feature.values_.properties[0].value.values_.depreciationYears; //已折旧年数
  970. obj.depreciationValue = feature.values_.properties[0].value.values_.depreciationValue; //累计折旧(已提折旧):每年折旧额*已折旧年数
  971. obj.depreciationSubject = feature.values_.properties[0].value.values_.depreciationSubject; //折旧科目(152:累计折旧)
  972. obj.depreciationFeeSubject = feature.values_.properties[0].value.values_.depreciationFeeSubject; //折旧费用科目(541005:管理费用-折旧及修理费)
  973. obj.fixedSubject = feature.values_.properties[0].value.values_.fixedSubject; //资产清理科目(153:固定资产清理)
  974. obj.fixedValue = feature.values_.properties[0].value.values_.fixedValue; //资产清理额
  975. obj.voucherId = feature.values_.properties[0].value.values_.voucherId; //购置凭证ID
  976. obj.assetType = feature.values_.properties[0].value.values_.assetType; //资产类别
  977. obj.operationType = feature.values_.properties[0].value.values_.operationType; //经营属性
  978. obj.addType = feature.values_.properties[0].value.values_.addType; //增加方式
  979. obj.useType = feature.values_.properties[0].value.values_.useType; //使用情况
  980. obj.depreciationType = feature.values_.properties[0].value.values_.depreciationType; //折旧方式
  981. obj.assetStatus = feature.values_.properties[0].value.values_.assetStatus; //资产状态
  982. obj.unit = feature.values_.properties[0].value.values_.unit; //计量单位
  983. //固定资产字典项
  984. that.getDicts("asset_type").then((response) => {
  985. var assetTypeOptions = response.data;
  986. if(obj.assetType !=null && obj.assetType !=""){
  987. for(var i=0;assetTypeOptions.length >i; i++){
  988. if(obj.assetType == assetTypeOptions[i].dictValue) {
  989. obj.assetType = assetTypeOptions[i].dictLabel;
  990. break;
  991. }
  992. }
  993. }
  994. });
  995. that.getDicts("operation_type").then((response) => {
  996. var operationTypeOptions = response.data;
  997. if(obj.operationType !=null && obj.operationType !="") {
  998. for (var i = 0; operationTypeOptions.length > i; i++) {
  999. if (obj.operationType == operationTypeOptions[i].dictValue) {
  1000. obj.operationType = operationTypeOptions[i].dictLabel;
  1001. break;
  1002. }
  1003. }
  1004. }
  1005. });
  1006. that.getDicts("add_type").then((response) => {
  1007. var addTypeOptions = response.data;
  1008. if(obj.addType !=null && obj.addType !="") {
  1009. for (var i = 0; addTypeOptions.length > i; i++) {
  1010. if (obj.addType == addTypeOptions[i].dictValue) {
  1011. obj.addType = addTypeOptions[i].dictLabel;
  1012. break;
  1013. }
  1014. }
  1015. }
  1016. });
  1017. that.getDicts("use_type").then((response) => {
  1018. var useTypeOptions = response.data;
  1019. if(obj.useType !=null && obj.useType !="") {
  1020. for (var i = 0; useTypeOptions.length > i; i++) {
  1021. if (obj.useType == useTypeOptions[i].dictValue) {
  1022. obj.useType = useTypeOptions[i].dictLabel;
  1023. break;
  1024. }
  1025. }
  1026. }
  1027. });
  1028. that.getDicts("depreciation_type").then((response) => {
  1029. var depreciationTypeOptions = response.data;
  1030. if(obj.depreciationType !=null && obj.depreciationType !="") {
  1031. for (var i = 0; depreciationTypeOptions.length > i; i++) {
  1032. if (obj.depreciationType == depreciationTypeOptions[i].dictValue) {
  1033. obj.depreciationType = depreciationTypeOptions[i].dictLabel;
  1034. break;
  1035. }
  1036. }
  1037. }
  1038. });
  1039. that.getDicts("asset_status").then((response) => {
  1040. var assetStatusOptions = response.data;
  1041. if(obj.assetStatus !=null && obj.assetStatus !="") {
  1042. for (var i = 0; assetStatusOptions.length > i; i++) {
  1043. if (obj.assetStatus == assetStatusOptions[i].dictValue) {
  1044. obj.assetStatus = assetStatusOptions[i].dictLabel;
  1045. break;
  1046. }
  1047. }
  1048. }
  1049. });
  1050. that.getDicts("fixed_assets_unit").then((response) => {
  1051. var unitOptions = response.data;
  1052. if(obj.unit !=null && obj.unit !="") {
  1053. for (var i = 0; unitOptions.length > i; i++) {
  1054. if (obj.unit == unitOptions[i].dictValue) {
  1055. obj.unit = unitOptions[i].dictLabel;
  1056. break;
  1057. }
  1058. }
  1059. }
  1060. });
  1061. that.mapHasData = obj;
  1062. }
  1063. }else {
  1064. that.contractionVisible = false;
  1065. that.mapHaDataValue = false;
  1066. }
  1067. });
  1068. //当前账套没有任何空间数据
  1069. if(mapTalkAbout){
  1070. let deptName =this.$cookies.get("deptId");
  1071. getQueryLand(deptName).then((response) => {
  1072. if (response.code == 200) {
  1073. let InsertCode = response.data;
  1074. if (InsertCode != null) {
  1075. var lat = InsertCode.lat;
  1076. var lng = InsertCode.lng;
  1077. var center;
  1078. if(lat !=null && lng !=null && lat !="" && lng !=""){
  1079. center = [lng,lat];
  1080. }else {
  1081. center =[115.452752, 31.789033];
  1082. }
  1083. map.getView().animate({
  1084. // 只设置需要的属性即可
  1085. center: ol.proj.fromLonLat(center), // 中心点
  1086. zoom: 17.9, // 缩放级别
  1087. rotation: undefined, // 缩放完成view视图旋转弧度
  1088. duration: 1000, // 缩放持续时间,默认不需要设置
  1089. });
  1090. }
  1091. }
  1092. });
  1093. }
  1094. },
  1095. viewContractionInfo(row) {
  1096. this.contractionData = row || {};
  1097. this.contractionAttachmentList = [];
  1098. attachmentList({
  1099. tableId: row.id,
  1100. tableName: 't_contraction_info',
  1101. }).then((resp) => {
  1102. this.contractionAttachmentList = resp.rows.map(rr=>{
  1103. return {
  1104. url:'/api'+rr.fileUrl
  1105. };
  1106. });
  1107. });
  1108. this.contractionVisible = true;
  1109. },
  1110. hideContractionInfo() {
  1111. this.contractionData = {};
  1112. this.contractionAttachmentList = [];
  1113. this.contractionVisible = false;
  1114. },
  1115. },
  1116. };
  1117. </script>