QcSsgqzysytdqkList_tj.vue 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447
  1. <template>
  2. <a-card :bordered="false">
  3. <!-- 查询区域 -->
  4. <div class="table-page-search-wrapper">
  5. <a-form layout="inline" @keyup.enter.native="searchQuery">
  6. <a-row :gutter="24">
  7. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  8. <a-form-item label="用地单位名称">
  9. <a-input placeholder="请输入用地单位名称" v-model="queryParam.createBy"/>
  10. </a-form-item>
  11. </a-col>
  12. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  13. <a-form-item label="地块名称">
  14. <a-input placeholder="请输入地块名称" v-model="queryParam.dk"></a-input>
  15. </a-form-item>
  16. </a-col>
  17. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  18. <a-form-item label="地块编号">
  19. <a-input placeholder="请输入地块编号" v-model="queryParam.dkbh"></a-input>
  20. </a-form-item>
  21. </a-col>
  22. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  23. <a-form-item label="行政区划">
  24. <JAreaSelect ref="JArea" @Area="SelectArea"></JAreaSelect>
  25. </a-form-item>
  26. </a-col>
  27. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  28. <a-form-item label="证书/合同/文件编号">
  29. <a-input placeholder="请输入证书/合同/文件编号" v-model="queryParam.wjbh"></a-input>
  30. </a-form-item>
  31. </a-col>
  32. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  33. <a-form-item label="证书类型">
  34. <j-dict-select-tag placeholder="请选择证书类型" v-model="queryParam.zslx" dictCode="zslx"/>
  35. </a-form-item>
  36. </a-col>
  37. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  38. <a-form-item label="取得方式">
  39. <j-dict-select-tag type='list'v-model='queryParam.syqsyfs' dictCode='qdfs' placeholder='请选择取得方式' />
  40. </a-form-item>
  41. </a-col>
  42. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  43. <a-form-item label="土地使用现状">
  44. <j-dict-select-tag type='list' v-model='queryParam.tdsyxz' dictCode='tdsyxz' placeholder='请选择土地使用现状' />
  45. </a-form-item>
  46. </a-col>
  47. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  48. <a-form-item label="是否通过审核">
  49. <j-dict-select-tag placeholder="请选择是否通过审核" v-model="queryParam.shzt" dictCode="shzt"/>
  50. </a-form-item>
  51. </a-col>
  52. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  53. <a-form-item label="土地使用权人">
  54. <a-input placeholder="请输入土地使用权人" v-model="queryParam.tdsyqr"></a-input>
  55. </a-form-item>
  56. </a-col>
  57. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  58. <a-form-item label="是否上报">
  59. <j-dict-select-tag placeholder="请选择是否上报" v-model="queryParam.sfsb" dictCode="xxsbzt"/>
  60. </a-form-item>
  61. </a-col>
  62. <a-col :xl="6" :lg="7" :md="8" :sm="24">
  63. <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
  64. <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
  65. <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
  66. <!-- <a @click="handleToggleSearch" style="margin-left: 8px">-->
  67. <!-- {{ toggleSearchStatus ? '收起' : '展开' }}-->
  68. <!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
  69. <!-- </a>-->
  70. </span>
  71. </a-col>
  72. </a-row>
  73. </a-form>
  74. </div>
  75. <!-- 查询区域-END -->
  76. <!-- 操作按钮区域 -->
  77. <div class="table-operator">
  78. <!-- <a-button v-has="'conts:add'"@click="handleAdd2" type="primary" icon="plus">填报信息</a-button>-->
  79. <!-- <a-button type="primary" icon="download" @click="handleExportXls('省属国企占有使用土地情况调查')">导出</a-button>-->
  80. <!-- <a-button type="primary" icon="download" @click="handleExportXls('省直单位占有使用土地情况调查')">全部导出</a-button>-->
  81. <!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
  82. <a-button type="primary" icon="import">导入</a-button>
  83. </a-upload>
  84. &lt;!&ndash; 高级查询区域 &ndash;&gt;
  85. <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>
  86. <a-dropdown v-if="selectedRowKeys.length > 0">
  87. <a-menu slot="overlay">
  88. <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
  89. </a-menu>
  90. <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
  91. </a-dropdown>-->
  92. </div>
  93. <!-- table区域-begin -->
  94. <!-- <div>-->
  95. <!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
  96. <!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
  97. <!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
  98. <!-- </div>-->
  99. <a-tabs :active-key="this.changes" @change="callback" >
  100. <a-tab-pane key="1" tab="列表信息">
  101. <a-table
  102. ref="table"
  103. size="middle"
  104. :scroll="{x:true}"
  105. bordered
  106. rowKey="id"
  107. :columns="columns"
  108. :dataSource="dataSource"
  109. :pagination="ipagination"
  110. :loading="loading"
  111. class="j-table-force-nowrap"
  112. @change="handleTableChange">
  113. <template slot="htmlSlot" slot-scope="text">
  114. <div v-html="text"></div>
  115. </template>
  116. <template slot="imgSlot" slot-scope="text,record">
  117. <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
  118. <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
  119. </template>
  120. <template slot="fileSlot" slot-scope="text">
  121. <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
  122. <a-button
  123. v-else
  124. :ghost="true"
  125. type="primary"
  126. icon="download"
  127. size="small"
  128. @click="downloadFile(text)">
  129. 下载
  130. </a-button>
  131. </template>
  132. <span slot="action" slot-scope="text, record">
  133. <a-space>
  134. <!-- <a-button @click="handleEdit(record)">编辑</a-button>-->
  135. <a-button @click="handleDetail(record)" type='primary'>查看</a-button>
  136. <!-- <a-button v-if="record.sfsb===3" @click="handleWCSH(record.id)">重新审核</a-button>-->
  137. <!-- <a-popconfirm title="确定恢复么吗?" @confirm="() => handleHFYSH(record.id)">-->
  138. <!-- <a-button v-if="record.sfsb===4">恢复为已审核</a-button>-->
  139. <!-- </a-popconfirm>-->
  140. </a-space>
  141. </span>
  142. </a-table>
  143. </a-tab-pane>
  144. <a-tab-pane key="2" tab="统计图表" force-render>
  145. <listTabBySz ref="table" :loading="this.load" :result-data="this.resultData"></listTabBySz>
  146. </a-tab-pane>
  147. </a-tabs>
  148. <qc-ssgqzysytdqk-modal ref="modalForm" @ok="modalFormOk"></qc-ssgqzysytdqk-modal>
  149. </a-card>
  150. </template>
  151. <script>
  152. import '@/assets/less/TableExpand.less'
  153. import { mixinDevice } from '@/utils/mixin'
  154. import { JeecgListMixin } from '@/mixins/JeecgListMixin'
  155. import QcSsgqzysytdqkModal from './modules/QcSsgqzysytdqkModal2'
  156. import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
  157. import { getAction } from '../../api/manage'
  158. import { loadCategoryData } from '@/api/api'
  159. import JAreaSelect from "@comp/jeecg/JAreaSelect";
  160. import listTabBySz from '@/views/listStatistics/listTabBySz'
  161. import store from '@/store'
  162. export default {
  163. name: 'QcSsgqzysytdqkList',
  164. props: {
  165. param: {
  166. default: ""
  167. }
  168. },
  169. mixins:[JeecgListMixin, mixinDevice],
  170. components: {
  171. QcSsgqzysytdqkModal,
  172. JAreaSelect,
  173. listTabBySz
  174. },
  175. data () {
  176. return {
  177. dlr:false,
  178. resultData:[],
  179. description: '省属国企占有使用土地情况调查管理页面',
  180. load: true,
  181. changes:'1',
  182. // 表头
  183. columns: [
  184. {
  185. title: '#',
  186. dataIndex: '',
  187. key:'rowIndex',
  188. width:60,
  189. align:"center",
  190. customRender:function (t,r,index) {
  191. return parseInt(index)+1;
  192. }
  193. },
  194. {
  195. title:'用地单位名称',
  196. align:"center",
  197. dataIndex: 'createBy'
  198. },
  199. {
  200. title:'地块',
  201. align:"center",
  202. dataIndex: 'dk'
  203. },
  204. {
  205. title:'证书类型',
  206. align:"center",
  207. dataIndex: 'zslx_dictText'
  208. },
  209. {
  210. title:'证书/合同/文件编号',
  211. align:"center",
  212. dataIndex: 'wjbh'
  213. },
  214. {
  215. title:'土地使用权人',
  216. align:"center",
  217. dataIndex: 'tdsyqr'
  218. },
  219. {
  220. title:'使用权使用方式',
  221. align:"center",
  222. dataIndex: 'syqsyfs_dictText'
  223. },
  224. {
  225. title:'实际用途',
  226. align:"center",
  227. dataIndex: 'sjyt',
  228. customRender:
  229. (text) => (text ? filterMultiDictText(this.dictOptions['sjyt'], text) : '')
  230. },
  231. {
  232. title:'是否上报',
  233. align:"center",
  234. dataIndex: 'sfsb_dictText'
  235. },
  236. {
  237. title: '操作',
  238. dataIndex: 'action',
  239. align:"center",
  240. fixed:"right",
  241. width:147,
  242. scopedSlots: { customRender: 'action' }
  243. }
  244. ],
  245. url: {
  246. list: "/qcsb/qcSsgqzysytdqk/listByglyy",
  247. delete: "/qcsb/qcSsgqzysytdqk/delete",
  248. deleteBatch: "/qcsb/qcSsgqzysytdqk/deleteBatch",
  249. exportXlsUrl: "/qcsb/qcSsgqzysytdqk/exportXls3",
  250. importExcelUrl: "qcsb/qcSsgqzysytdqk/importExcel",
  251. wcsh:"/qcsb/qcSsgqzysytdqk/wcsh",
  252. hfysh:"/qcsb/qcSsgqzysytdqk/hfysh",
  253. listTable: "/qcsb/qcSsgqzysytdqk/sumListBysz"
  254. },
  255. dictOptions:{},
  256. superFieldList:[],
  257. }
  258. },
  259. created() {
  260. this.getSuperFieldList();
  261. },
  262. mounted() {
  263. this.show()
  264. this.searchQuery()
  265. },
  266. computed: {
  267. importExcelUrl: function(){
  268. return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
  269. },
  270. },
  271. methods: {
  272. updataData(){
  273. let _this = this;
  274. new Promise(function (resolve, reject) {
  275. getAction(_this.url.listTable, _this.queryParam).then(res => {
  276. if (res.success) {
  277. _this.load = false
  278. _this.resultData = res.result
  279. resolve();
  280. }
  281. })
  282. })
  283. },
  284. searchQuery() {
  285. this.changes='1'
  286. this.loadData(1);
  287. // 点击查询清空列表选中行
  288. // https://gitee.com/jeecg/jeecg-boot/issues/I4KTU1
  289. this.selectedRowKeys = []
  290. this.selectionRows = []
  291. },
  292. loadData(arg) {
  293. if (!this.url.list) {
  294. this.$message.error("请设置url.list属性!")
  295. return
  296. }
  297. this.queryParam = this.param
  298. //加载数据 若传入参数1则加载第一页的内容
  299. if (arg === 1) {
  300. this.ipagination.current = 1;
  301. }
  302. this.loading = true;
  303. getAction(this.url.list, this.queryParam).then((res) => {
  304. if (res.success) {
  305. console.log(res)
  306. //update-begin---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------
  307. this.dataSource = res.result.records || res.result;
  308. this.dataSource.forEach((item) => {
  309. if (item.gyzccgbl) {
  310. item.gyzccgbl = Number(item.gyzccgbl).toFixed(2)
  311. }
  312. })
  313. if (res.result.total) {
  314. this.ipagination.total = res.result.total;
  315. } else {
  316. this.ipagination.total = 0;
  317. }
  318. //update-end---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------
  319. } else {
  320. this.$message.warning(res.message)
  321. }
  322. }).finally(() => {
  323. this.loading = false
  324. })
  325. },
  326. callback(key) {
  327. if (key == 1) {
  328. this.emptyData()
  329. this.changes='1'
  330. }
  331. if (key == 2) {
  332. this.changes='2'
  333. this.emptyData()
  334. this.updataData()
  335. }
  336. },
  337. SelectArea(val) {
  338. if (val.length > 4) {
  339. this.queryParam.xzqh = val + '*'
  340. } else {
  341. this.queryParam.xzqh = val.slice(0, 4) + '*'
  342. }
  343. },
  344. emptyData(){
  345. this.load = true
  346. this.$refs.table.data=[]
  347. this.$refs.table.areaData=[]
  348. this.$refs.table.pieResultData=[]
  349. this.$refs.table.pieAreaResultData=[]
  350. this.$refs.table.DoughnutResultData=[]
  351. this.$refs.table.doughnutByXzResultData=[]
  352. this.$refs.table.xzData=[]
  353. this.$refs.table.registerData=[]
  354. this.$refs.table.barResultData=[]
  355. this.$refs.table.nan=[]
  356. this.$refs.table.va=[]
  357. this.$refs.table.xqData=[]
  358. this.$refs.table.sjytData=[]
  359. this.$refs.table.sjytValue=[]
  360. this.$refs.table.sjytName=[]
  361. this.$refs.table.barBysjytResultData=[]
  362. this.$refs.table.number=0
  363. },
  364. searchReset() {
  365. this.$refs.JArea.allClear(),
  366. this.queryParam = {}
  367. this.loadData(1);
  368. },
  369. show(){
  370. getAction("/qcsb.qyxx/qcQyxx/dlr").then(res => {
  371. if (res.success) {
  372. if(res.result=='gzw'){
  373. this.dl=true
  374. }
  375. }
  376. })
  377. }
  378. ,
  379. handleWCSH(id){
  380. getAction(this.url.wcsh,{id:id}).then(res => {
  381. if (res.success) {
  382. this.$message.success('审核完成');
  383. this.loadData();
  384. }
  385. })
  386. },
  387. handleHFYSH(id){
  388. getAction(this.url.hfysh,{id:id}).then(res => {
  389. if (res.success) {
  390. this.$message.success('已经恢复');
  391. this.loadData();
  392. }
  393. })
  394. },
  395. initDictConfig(){
  396. loadCategoryData({code:'A04'}).then((res) => {
  397. if (res.success) {
  398. console.log(res.result)
  399. this.$set(this.dictOptions, 'sjyt', res.result)
  400. }
  401. })
  402. },
  403. getSuperFieldList(){
  404. let fieldList=[];
  405. fieldList.push({type:'string',value:'dk',text:'地块',dictCode:''})
  406. fieldList.push({type:'string',value:'wjlx',text:'文件类型',dictCode:'wjlx'})
  407. fieldList.push({type:'string',value:'wjbh',text:'证书/合同/文件编号',dictCode:''})
  408. fieldList.push({type:'string',value:'tdsyqr',text:'土地使用权人',dictCode:''})
  409. fieldList.push({type:'double',value:'sjzytdmj',text:'实际占用土地面积',dictCode:''})
  410. fieldList.push({type:'double',value:'qzpzsymj',text:'其中批准使用面积',dictCode:''})
  411. fieldList.push({type:'double',value:'sjsyjzmj',text:'实际使用建筑面积',dictCode:''})
  412. fieldList.push({type:'double',value:'qzpzsymj2',text:'其中批准使用面积',dictCode:''})
  413. fieldList.push({type:'double',value:'sjrjl',text:'容积率',dictCode:''})
  414. fieldList.push({type:'string',value:'syqsyfs',text:'使用权使用方式',dictCode:'syqsyfs'})
  415. fieldList.push({type:'string',value:'zlwz',text:'坐落位置',dictCode:''})
  416. fieldList.push({type:'string',value:'sjyt',text:'实际用途',dictCode:'tdyt'})
  417. fieldList.push({type:'date',value:'qsqssj',text:'权属起始时间'})
  418. fieldList.push({type:'date',value:'qsdqsj',text:'权属到期时间'})
  419. fieldList.push({type:'string',value:'tdsyxz',text:'土地使用现状',dictCode:'tdsyxz'})
  420. fieldList.push({type:'list_multi',value:'dbdycfqk',text:'担保、抵押、查封情况',dictTable:"", dictText:'', dictCode:'dbdycfqk'})
  421. fieldList.push({type:'string',value:'bz',text:'备注',dictCode:''})
  422. fieldList.push({type:'string',value:'xgwj',text:'附件材料',dictCode:''})
  423. fieldList.push({type:'int',value:'sfsb',text:'是否上报',dictCode:'xxsbzt'})
  424. this.superFieldList = fieldList
  425. }
  426. }
  427. }
  428. </script>
  429. <style scoped>
  430. @import '~@assets/less/common.less';
  431. </style>