financeRecord.vue 47 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234
  1. <template>
  2. <el-tabs type="border-card" v-model="activeName" @tab-click="handleClick">
  3. <!-- 全部table页 -->
  4. <el-tab-pane label="全部" name = "first">
  5. <el-card class="fiche">
  6. <right-toolbar :showSearch.sync="showSearch" @queryTable="getList">收起</right-toolbar>
  7. <span style="margin-bottom: 10px;color: #333333;font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial,sans-serif;">所选条件:</span>
  8. <div style="float: right; margin-right: 1%">
  9. <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
  10. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" style="float: ">重置</el-button>
  11. <column-setting :checkList="checkList" :tableList="tableList" :selfDom="selfDom" :tableId="tableId" style="margin-left:5px"></column-setting>
  12. </div>
  13. <hr style="margin-top: 16px" />
  14. <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
  15. <el-form-item prop="zfrTypes">
  16. <el-select v-model="queryParams.zfrTypes" clearable size="small">
  17. <el-option
  18. v-for="dict in typesOptions"
  19. :key="dict.dictValue"
  20. :label="dict.dictLabel"
  21. :value="dict.dictValue"
  22. />
  23. </el-select>
  24. </el-form-item>
  25. <el-form-item prop="zfrQuery">
  26. <el-select v-model="queryParams.zfrQuery" clearable size="small">
  27. <el-option
  28. v-for="dict in queryOptions"
  29. :key="dict.dictValue"
  30. :label="dict.dictLabel"
  31. :value="dict.dictValue"
  32. />
  33. </el-select>
  34. </el-form-item>
  35. <el-form-item prop="zfrValue" v-if="this.queryParams.zfrQuery">
  36. <el-input
  37. v-model="queryParams.zfrValue"
  38. clearable
  39. size="small"
  40. maxlength="25"
  41. style="width: 190px"
  42. />
  43. </el-form-item>
  44. </el-form>
  45. </el-card>
  46. <el-row :gutter="10" class="mb8">
  47. <el-col :span="1.5">
  48. <el-button
  49. type="primary"
  50. icon="el-icon-plus"
  51. size="mini"
  52. @click="handleAdd"
  53. v-hasPermi="['finance:record:add']"
  54. >申请融资</el-button
  55. >
  56. </el-col>
  57. </el-row>
  58. <el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange" stripe border>
  59. <el-table-column label="序号" type="index" width="50" align="center">
  60. <template slot-scope="scope">
  61. <span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
  62. </template>
  63. </el-table-column>
  64. <el-table-column label="融信编号" align="center" prop="zfiNumner" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfiNumner && (this.companyType == '00' || this.companyType == '02')"/>
  65. <el-table-column label="融资编号" align="center" prop="zfrNumber" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrNumber"/>
  66. <el-table-column label="融资方" align="center" prop="supplierScyName" v-if="uncheckList.supplierScyName && this.companyType == '01'"/>
  67. <el-table-column label="开立方" align="center" prop="coreScyName" v-if="uncheckList.coreScyName"/>
  68. <el-table-column label="融资金额" :formatter="moneyFormat" align="center" prop="zfrAmount" v-if="uncheckList.zfrAmount"/>
  69. <el-table-column label="融资利率(%)" align="center" prop="zfrRate" v-if="uncheckList.zfrRate"/>
  70. <el-table-column label="经办人" align="center" prop="nickName" v-if="uncheckList.nickName"/>
  71. <el-table-column label="承诺还款时间" align="center" prop="zfrExpireDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrExpireDate"/>
  72. <el-table-column label="融资申请日期" align="center" prop="zfrApplyDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrApplyDate"/>
  73. <el-table-column label="实际放款金额" :formatter="moneyFormat" align="center" prop="zfrLoanAmount" v-if="uncheckList.zfrLoanAmount"/>
  74. <el-table-column label="融资放款日期" align="center" prop="zfrLoanDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrLoanDate"/>
  75. <el-table-column label="融资状态" :formatter="statusFormat" align="center" prop="zfrStatus" v-if="uncheckList.zfrStatus"/>
  76. <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200">
  77. <template slot-scope="scope">
  78. <el-button
  79. size="mini"
  80. type="text"
  81. icon="el-icon-edit"
  82. @click="handleDetail(scope.row)"
  83. v-hasPermi="['finance:record:query']"
  84. >详情</el-button
  85. >
  86. <el-button
  87. size="mini"
  88. type="text"
  89. icon="el-icon-delete"
  90. @click="handleLoan(scope.row)"
  91. v-hasPermi="['finance:record:edit']"
  92. v-if="scope.row.zfrStatus == '00'"
  93. >放款登记</el-button
  94. >
  95. <el-button
  96. size="mini"
  97. type="text"
  98. icon="el-icon-delete"
  99. @click="handleExport(scope.row)"
  100. v-hasPermi="['finance:record:export']"
  101. >导出</el-button
  102. >
  103. <!-- <el-button
  104. size="mini"
  105. type="text"
  106. icon="el-icon-edit"
  107. @click="handleApprove(scope.row)"
  108. v-hasPermi="['finance:record:approve']"
  109. v-if="scope.row.zfrApproveStt == '03' && scope.row.zfrStatus != '01'"
  110. >提交审批</el-button
  111. > -->
  112. <el-button
  113. size="mini"
  114. type="text"
  115. icon="el-icon-edit"
  116. @click="seal(scope.row)"
  117. v-hasPermi="['finance:record:seal']"
  118. v-if="scope.row.zfrApproveStt == '01' && scope.row.zfrStatus == '04'"
  119. >盖章</el-button>
  120. </template>
  121. </el-table-column>
  122. </el-table>
  123. <pagination
  124. v-show="total > 0"
  125. :total="total"
  126. :page.sync="queryParams.pageNum"
  127. :limit.sync="queryParams.pageSize"
  128. @pagination="getList"
  129. />
  130. </el-tab-pane>
  131. <!-- 融资中table页 -->
  132. <el-tab-pane label="融资中" name = "second">
  133. <el-card class="fiche">
  134. <right-toolbar :showSearch.sync="showSearch" @queryTable="getList">收起</right-toolbar>
  135. <span style="margin-bottom: 10px;color: #333333; font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial,sans-serif;">所选条件:</span>
  136. <div style="float: right; margin-right: 1%">
  137. <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQueryIng" >搜索</el-button>
  138. <el-button icon="el-icon-refresh" size="mini" @click="resetQueryIng" style="float: ">重置</el-button>
  139. <column-setting :checkList="checkListOne" :tableList="tableListOne" :selfDom="selfDom" :tableId="tableIdOne" style="margin-left:5px"></column-setting>
  140. </div>
  141. <hr style="margin-top: 16px" />
  142. <el-form
  143. :model="queryParamsIng"
  144. ref="queryFormIng"
  145. :inline="true"
  146. v-show="showSearch"
  147. label-width="68px"
  148. >
  149. <el-form-item prop="zfrTypes">
  150. <el-select v-model="queryParams.zfrTypes" clearable size="small">
  151. <el-option
  152. v-for="dict in typesOptions"
  153. :key="dict.dictValue"
  154. :label="dict.dictLabel"
  155. :value="dict.dictValue"
  156. />
  157. </el-select>
  158. </el-form-item>
  159. <el-form-item prop="zfrQuery">
  160. <el-select v-model="queryParams.zfrQuery" clearable size="small">
  161. <el-option
  162. v-for="dict in queryOptions"
  163. :key="dict.dictValue"
  164. :label="dict.dictLabel"
  165. :value="dict.dictValue"
  166. />
  167. </el-select>
  168. </el-form-item>
  169. <el-form-item prop="zfrValue" v-if="this.queryParams.zfrQuery">
  170. <el-input
  171. v-model="queryParams.zfrValue"
  172. clearable
  173. size="small"
  174. maxlength="25"
  175. style="width: 190px"
  176. />
  177. </el-form-item>
  178. </el-form>
  179. </el-card>
  180. <el-table v-loading="loadingIng" :data="recordIngList" @selection-change="handleSelectionChangeIng" stripe border>
  181. <el-table-column label="序号" type="index" width="50" align="center">
  182. <template slot-scope="scope">
  183. <span>{{(queryParamsIng.pageNum - 1) * queryParamsIng.pageSize +scope.$index + 1}}</span>
  184. </template>
  185. </el-table-column>
  186. <el-table-column label="融信编号" align="center" prop="zfiNumner" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfiNumner && (this.companyType == '00' || this.companyType == '02')"/>
  187. <el-table-column label="融资编号" align="center" prop="zfrNumber" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrNumber"/>
  188. <el-table-column label="融资方" align="center" prop="supplierScyName" v-if="uncheckList.supplierScyName && this.companyType == '01'"/>
  189. <el-table-column label="开立方" align="center" prop="coreScyName" v-if="uncheckList.coreScyName"/>
  190. <el-table-column label="融资金额" :formatter="moneyFormat" align="center" prop="zfrAmount" v-if="uncheckList.zfrAmount"/>
  191. <el-table-column label="融资利率(%)" align="center" prop="zfrRate" v-if="uncheckList.zfrRate"/>
  192. <el-table-column label="经办人" align="center" prop="nickName" v-if="uncheckList.nickName"/>
  193. <el-table-column label="承诺还款时间" align="center" prop="zfrExpireDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrExpireDate"/>
  194. <el-table-column label="融资申请日期" align="center" prop="zfrApplyDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrApplyDate"/>
  195. <el-table-column label="实际放款金额" :formatter="moneyFormat" align="center" prop="zfrLoanAmount" v-if="uncheckList.zfrLoanAmount"/>
  196. <el-table-column label="融资放款日期" align="center" prop="zfrLoanDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrLoanDate"/>
  197. <el-table-column label="融资状态" :formatter="statusFormat" align="center" prop="zfrStatus" v-if="uncheckList.zfrStatus"/>
  198. <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200">
  199. <template slot-scope="scope">
  200. <el-button
  201. size="mini"
  202. type="text"
  203. icon="el-icon-edit"
  204. @click="handleDetail(scope.row)"
  205. v-hasPermi="['finance:record:query']"
  206. >详情</el-button
  207. >
  208. <el-button
  209. size="mini"
  210. type="text"
  211. icon="el-icon-delete"
  212. @click="handleLoan(scope.row)"
  213. v-hasPermi="['finance:record:edit']"
  214. >放款登记</el-button
  215. >
  216. <el-button
  217. size="mini"
  218. type="text"
  219. icon="el-icon-delete"
  220. @click="handleExport(scope.row)"
  221. v-hasPermi="['finance:record:export']"
  222. >导出</el-button
  223. >
  224. </template>
  225. </el-table-column>
  226. </el-table>
  227. <pagination
  228. v-show="totalIng > 0"
  229. :total="totalIng"
  230. :page.sync="queryParamsIng.pageNum"
  231. :limit.sync="queryParamsIng.pageSize"
  232. @pagination="getIngList"
  233. />
  234. </el-tab-pane>
  235. <!-- 已放款table页 -->
  236. <el-tab-pane label="已放款" name = "third">
  237. <el-card class="fiche">
  238. <right-toolbar :showSearch.sync="showSearch" @queryTable="getList">收起</right-toolbar>
  239. <span style="margin-bottom: 10px; color: #333333; font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial, sans-serif;">所选条件:</span>
  240. <div style="float: right; margin-right: 1%">
  241. <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQueryEnd" >搜索</el-button>
  242. <el-button icon="el-icon-refresh" size="mini" @click="resetQueryEnd" style="float: " >重置</el-button>
  243. <column-setting :checkList="checkListTwo" :tableList="tableListTwo" :selfDom="selfDom" :tableId="tableIdTwo" style="margin-left:5px"></column-setting>
  244. </div>
  245. <hr style="margin-top: 16px" />
  246. <el-form
  247. :model="queryParamsEnd"
  248. ref="queryFormEnd"
  249. :inline="true"
  250. v-show="showSearch"
  251. label-width="68px"
  252. >
  253. <el-form-item prop="zfrTypes">
  254. <el-select v-model="queryParams.zfrTypes" clearable size="small">
  255. <el-option
  256. v-for="dict in typesOptions"
  257. :key="dict.dictValue"
  258. :label="dict.dictLabel"
  259. :value="dict.dictValue"
  260. />
  261. </el-select>
  262. </el-form-item>
  263. <el-form-item prop="zfrQuery">
  264. <el-select v-model="queryParams.zfrQuery" clearable size="small">
  265. <el-option
  266. v-for="dict in queryOptions"
  267. :key="dict.dictValue"
  268. :label="dict.dictLabel"
  269. :value="dict.dictValue"
  270. />
  271. </el-select>
  272. </el-form-item>
  273. <el-form-item prop="zfrValue" v-if="this.queryParams.zfrQuery">
  274. <el-input
  275. v-model="queryParams.zfrValue"
  276. clearable
  277. size="small"
  278. maxlength="25"
  279. style="width: 190px"
  280. />
  281. </el-form-item>
  282. </el-form>
  283. </el-card>
  284. <el-table
  285. v-loading="loadingEnd"
  286. :data="recordEndList"
  287. @selection-change="handleSelectionChange"
  288. stripe
  289. border
  290. >
  291. <el-table-column label="序号" type="index" width="50" align="center">
  292. <template slot-scope="scope">
  293. <span>{{ (queryParamsEnd.pageNum - 1) * queryParamsEnd.pageSize + scope.$index + 1 }}</span>
  294. </template>
  295. </el-table-column>
  296. <el-table-column label="融信编号" align="center" prop="zfiNumner" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfiNumner && (this.companyType == '00' || this.companyType == '02')"/>
  297. <el-table-column label="融资编号" align="center" prop="zfrNumber" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrNumber"/>
  298. <el-table-column label="融资方" align="center" prop="supplierScyName" v-if="uncheckList.supplierScyName && this.companyType == '01'"/>
  299. <el-table-column label="开立方" align="center" prop="coreScyName" v-if="uncheckList.coreScyName"/>
  300. <el-table-column label="融资金额" :formatter="moneyFormat" align="center" prop="zfrAmount" v-if="uncheckList.zfrAmount"/>
  301. <el-table-column label="融资利率(%)" align="center" prop="zfrRate" v-if="uncheckList.zfrRate"/>
  302. <el-table-column label="经办人" align="center" prop="nickName" v-if="uncheckList.nickName"/>
  303. <el-table-column label="承诺还款时间" align="center" prop="zfrExpireDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrExpireDate"/>
  304. <el-table-column label="融资申请日期" align="center" prop="zfrApplyDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrApplyDate"/>
  305. <el-table-column label="实际放款金额" :formatter="moneyFormat" align="center" prop="zfrLoanAmount" v-if="uncheckList.zfrLoanAmount"/>
  306. <el-table-column label="融资放款日期" align="center" prop="zfrLoanDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrLoanDate"/>
  307. <el-table-column label="融资状态" :formatter="statusFormat" align="center" prop="zfrStatus" v-if="uncheckList.zfrStatus"/>
  308. <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200">
  309. <template slot-scope="scope">
  310. <el-button
  311. size="mini"
  312. type="text"
  313. icon="el-icon-edit"
  314. @click="handleDetail(scope.row)"
  315. v-hasPermi="['finance:record:query']"
  316. >详情</el-button
  317. >
  318. <el-button
  319. size="mini"
  320. type="text"
  321. icon="el-icon-delete"
  322. @click="handleExport(scope.row)"
  323. v-hasPermi="['finance:record:export']"
  324. >导出</el-button
  325. >
  326. </template>
  327. </el-table-column>
  328. </el-table>
  329. <pagination
  330. v-show="totalEnd > 0"
  331. :total="totalEnd"
  332. :page.sync="queryParamsEnd.pageNum"
  333. :limit.sync="queryParamsEnd.pageSize"
  334. @pagination="getEndList"
  335. />
  336. </el-tab-pane>
  337. <!-- 融资失败table页 -->
  338. <el-tab-pane label="融资失败" name = "fourth">
  339. <el-card class="fiche">
  340. <right-toolbar :showSearch.sync="showSearch" @queryTable="getList">收起</right-toolbar>
  341. <span style="margin-bottom: 10px; color: #333333; font: 14px Helvetica Neue, Helvetica, PingFang SC, Tahoma, Arial, sans-serif;">所选条件:</span>
  342. <div style="float: right; margin-right: 1%">
  343. <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQueryLose" >搜索</el-button>
  344. <el-button icon="el-icon-refresh" size="mini" @click="resetQueryLose" style="float: " >重置</el-button>
  345. <column-setting :checkList="checkListThree" :tableList="tableListThree" :selfDom="selfDom" :tableId="tableIdThree" style="margin-left:5px"></column-setting>
  346. </div>
  347. <hr style="margin-top: 16px" />
  348. <el-form
  349. :model="queryParamsLose"
  350. ref="queryFormLose"
  351. :inline="true"
  352. v-show="showSearch"
  353. label-width="68px"
  354. >
  355. <el-form-item prop="zfrTypes">
  356. <el-select v-model="queryParams.zfrTypes" clearable size="small">
  357. <el-option
  358. v-for="dict in typesOptions"
  359. :key="dict.dictValue"
  360. :label="dict.dictLabel"
  361. :value="dict.dictValue"
  362. />
  363. </el-select>
  364. </el-form-item>
  365. <el-form-item prop="zfrQuery">
  366. <el-select v-model="queryParams.zfrQuery" clearable size="small">
  367. <el-option
  368. v-for="dict in queryOptions"
  369. :key="dict.dictValue"
  370. :label="dict.dictLabel"
  371. :value="dict.dictValue"
  372. />
  373. </el-select>
  374. </el-form-item>
  375. <el-form-item prop="zfrValue" v-if="this.queryParams.zfrQuery">
  376. <el-input
  377. v-model="queryParams.zfrValue"
  378. clearable
  379. size="small"
  380. maxlength="25"
  381. style="width: 190px"
  382. />
  383. </el-form-item>
  384. </el-form>
  385. </el-card>
  386. <el-table v-loading="loadingLose" :data="recordLoseList" @selection-change="handleSelectionChange" stripe border>
  387. <el-table-column label="序号" type="index" width="50" align="center">
  388. <template slot-scope="scope">
  389. <span>{{ (queryParamsLose.pageNum - 1) * queryParamsLose.pageSize + scope.$index + 1}}</span>
  390. </template>
  391. </el-table-column>
  392. <el-table-column label="融信编号" align="center" prop="zfiNumner" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfiNumner && (this.companyType == '00' || this.companyType == '02')"/>
  393. <el-table-column label="融资编号" align="center" prop="zfrNumber" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrNumber"/>
  394. <el-table-column label="融资方" align="center" prop="supplierScyName" v-if="uncheckList.supplierScyName && this.companyType == '01'"/>
  395. <el-table-column label="开立方" align="center" prop="coreScyName" v-if="uncheckList.coreScyName"/>
  396. <el-table-column label="融资金额" :formatter="moneyFormat" align="center" prop="zfrAmount" v-if="uncheckList.zfrAmount"/>
  397. <el-table-column label="融资利率(%)" align="center" prop="zfrRate" v-if="uncheckList.zfrRate"/>
  398. <el-table-column label="经办人" align="center" prop="nickName" v-if="uncheckList.nickName"/>
  399. <el-table-column label="承诺还款时间" align="center" prop="zfrExpireDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrExpireDate"/>
  400. <el-table-column label="融资申请日期" align="center" prop="zfrApplyDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrApplyDate"/>
  401. <el-table-column label="实际放款金额" :formatter="moneyFormat" align="center" prop="zfrLoanAmount" v-if="uncheckList.zfrLoanAmount"/>
  402. <el-table-column label="融资放款日期" align="center" prop="zfrLoanDate" width="180" :show-overflow-tooltip="true" v-if="uncheckList.zfrLoanDate"/>
  403. <el-table-column label="融资状态" :formatter="statusFormat" align="center" prop="zfrStatus" v-if="uncheckList.zfrStatus"/>
  404. <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200">
  405. <template slot-scope="scope">
  406. <el-button
  407. size="mini"
  408. type="text"
  409. icon="el-icon-edit"
  410. @click="handleDetail(scope.row)"
  411. v-hasPermi="['finance:record:query']"
  412. >详情</el-button
  413. >
  414. <el-button
  415. size="mini"
  416. type="text"
  417. icon="el-icon-delete"
  418. @click="handleExport(scope.row)"
  419. v-hasPermi="['finance:record:export']"
  420. >导出</el-button
  421. >
  422. </template>
  423. </el-table-column>
  424. </el-table>
  425. <pagination
  426. v-show="totalLose > 0"
  427. :total="totalLose"
  428. :page.sync="queryParamsLose.pageNum"
  429. :limit.sync="queryParamsLose.pageSize"
  430. @pagination="getLoseList"
  431. />
  432. </el-tab-pane>
  433. <!-- 添加或修改融资记录对话框 -->
  434. <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
  435. <el-form ref="form" :model="form" :rules="rules" label-width="80px">
  436. <el-form-item label="实际放款金额" prop="zfrLoanAmount" label-width="100px" >
  437. <el-input v-model="form.zfrLoanAmount" placeholder="实际放款金额" style="width: 284px">
  438. <template slot="append">元</template>
  439. </el-input>
  440. </el-form-item>
  441. <el-form-item label="上传附件">
  442. <el-upload
  443. ref="upload"
  444. class="upload-demo"
  445. action=""
  446. :class="{ showUoload: showBtnImg, uoloadSty: noneBtnImg }"
  447. :on-change="dealImgChange"
  448. accept=".jpg, .jpeg, .png, .JPG, .JPEG, .PNG"
  449. :http-request="httpRequest"
  450. :on-preview="handlePictureCardPreview"
  451. :on-remove="handleRemove"
  452. multiple
  453. :limit="1"
  454. :on-exceed="handleExceed"
  455. list-type="picture-card"
  456. :file-list="fileList"
  457. :auto-upload="true"
  458. >
  459. <el-button slot="trigger" size="small" type="primary"
  460. >点击选择</el-button
  461. >
  462. <!-- <el-button
  463. style="margin-left: 10px"
  464. size="small"
  465. type="success"
  466. @click="submitUpload"
  467. >上传到服务器</el-button
  468. > -->
  469. </el-upload>
  470. </el-form-item>
  471. <el-form-item label="融资id" prop="zfrId" label-width="90px" v-if="false">
  472. <el-input v-model="form.zfrId" style="width: 284px" />
  473. </el-form-item>
  474. <el-form-item label="融信id" prop="zfrFinanceId" label-width="90px" v-if="false">
  475. <el-input v-model="form.zfrFinanceId" style="width: 284px" />
  476. </el-form-item>
  477. </el-form>
  478. <div slot="footer" class="dialog-footer">
  479. <el-button type="primary" @click="submitForm">确 定</el-button>
  480. <el-button @click="cancel">取 消</el-button>
  481. </div>
  482. </el-dialog>
  483. <el-dialog :visible.sync="dialogVisible">
  484. <img width="100%" :src="dialogImageUrl" alt="" />
  485. </el-dialog>
  486. </el-tabs>
  487. </template>
  488. <script>
  489. import {
  490. listRecord,
  491. getRecord,
  492. delRecord,
  493. addRecord,
  494. updateRecord,
  495. examineApprove,
  496. } from "@/api/service/financeRecord/record";
  497. import { uploadFileNew } from "@/api/common/file";
  498. import Cookies from "js-cookie";
  499. import { getToken } from "@/utils/auth";
  500. import { columnQuery } from "@/api/common/columnSetting";
  501. import ColumnSetting from "../../../components/Table/columnSetting.vue";
  502. export default {
  503. name: "finaceRecord",
  504. components: {ColumnSetting},
  505. data() {
  506. return {
  507. //企业类型
  508. companyType: '',
  509. //上传使用
  510. dialogImageUrl: "",
  511. dialogVisible: false,
  512. //附件按钮
  513. showBtnImg: true,
  514. noneBtnImg: false,
  515. limitCountImg: 1,
  516. // 遮罩层
  517. loading: true,
  518. loadingIng: true,
  519. loadingEnd: true,
  520. loadingLose: true,
  521. // 选中数组
  522. ids: [],
  523. // 非单个禁用
  524. single: true,
  525. // 非多个禁用
  526. multiple: true,
  527. // 显示搜索条件
  528. showSearch: true,
  529. // 总条数
  530. total: 0,
  531. totalIng: 0,
  532. totalEnd: 0,
  533. totalLose: 0,
  534. // 全部融资记录表格数据
  535. recordList: [],
  536. // 融资中融资记录表格数据
  537. recordIngList: [],
  538. // 已放款融资记录表格数据
  539. recordEndList: [],
  540. // 融资失败融资记录表格数据
  541. recordLoseList: [],
  542. //附件地址
  543. fileList: [],
  544. //融资状态数据字典
  545. statusOptions: [],
  546. //筛选条件数据字典
  547. typesOptions: [],
  548. queryOptions: [],
  549. // 弹出层标题
  550. title: "",
  551. // 是否显示弹出层
  552. open: false,
  553. // 查询参数
  554. queryParams: {
  555. pageNum: 1,
  556. pageSize: 10,
  557. zfrFinanceId: null,
  558. zfrNumber: null,
  559. zfrAmount: null,
  560. zfrRate: null,
  561. zfrHandler: null,
  562. zfrRepaymentDate: null,
  563. zfrApplyDate: null,
  564. zfrLoanDate: null,
  565. zfrApplyAmount: null,
  566. zfrApplyType: null,
  567. zfrStatus: null,
  568. zfrApproveStt: null,
  569. zfrTypes: null,
  570. zfrQuery: null,
  571. zfrValue: null,
  572. },
  573. queryParamsIng: {
  574. pageNum: 1,
  575. pageSize: 10,
  576. zfrFinanceId: null,
  577. zfrNumber: null,
  578. zfrAmount: null,
  579. zfrRate: null,
  580. zfrHandler: null,
  581. zfrRepaymentDate: null,
  582. zfrApplyDate: null,
  583. zfrLoanDate: null,
  584. zfrApplyAmount: null,
  585. zfrApplyType: null,
  586. zfrStatus: null,
  587. zfrApproveStt: null,
  588. zfrTypes: null,
  589. zfrQuery: null,
  590. zfrValue: null,
  591. },
  592. queryParamsEnd: {
  593. pageNum: 1,
  594. pageSize: 10,
  595. zfrFinanceId: null,
  596. zfrNumber: null,
  597. zfrAmount: null,
  598. zfrRate: null,
  599. zfrHandler: null,
  600. zfrRepaymentDate: null,
  601. zfrApplyDate: null,
  602. zfrLoanDate: null,
  603. zfrApplyAmount: null,
  604. zfrApplyType: null,
  605. zfrStatus: null,
  606. zfrApproveStt: null,
  607. zfrTypes: null,
  608. zfrQuery: null,
  609. zfrValue: null,
  610. },
  611. queryParamsLose: {
  612. pageNum: 1,
  613. pageSize: 10,
  614. zfrFinanceId: null,
  615. zfrNumber: null,
  616. zfrAmount: null,
  617. zfrRate: null,
  618. zfrHandler: null,
  619. zfrRepaymentDate: null,
  620. zfrApplyDate: null,
  621. zfrLoanDate: null,
  622. zfrApplyAmount: null,
  623. zfrApplyType: null,
  624. zfrStatus: null,
  625. zfrApproveStt: null,
  626. zfrTypes: null,
  627. zfrQuery: null,
  628. zfrValue: null,
  629. },
  630. // 表单参数
  631. form: {},
  632. //筛选按钮的数据列表,与table表头的数据一致 --显示隐藏列用--全部
  633. tableList: [
  634. {label: "zfiNumner", value: "融信编号"},
  635. {label: "zfrNumber", value: "融资编号"},
  636. {label: "supplierScyName", value: "融资方"},
  637. {label: 'coreScyName', value: '开立方'},
  638. {label: 'zfrAmount', value: '融资金额'},
  639. {label: "zfrRate", value: "融资利率"},
  640. {label: "nickName", value: "经办人"},
  641. {label: "zfrExpireDate", value: "承诺还款时间"},
  642. {label: "zfrApplyDate", value: "融资申请日期"},
  643. {label: 'zfrLoanAmount', value: '实际放款金额'},
  644. {label: "zfrLoanDate", value: "融资放款日期"},
  645. {label: "zfrStatus", value: "融资状态"},
  646. ],
  647. checkList: [], //筛选列选中的数据列表--显示隐藏列用
  648. uncheckList: {}, //控制筛选列显示隐藏--显示隐藏列用
  649. firstSet : false,
  650. tableId: "/sc-service/financeRecord/list/all",
  651. //融资中
  652. tableListOne: [
  653. {label: "zfiNumner", value: "融信编号"},
  654. {label: "zfrNumber", value: "融资编号"},
  655. {label: "supplierScyName", value: "融资方"},
  656. {label: 'coreScyName', value: '开立方'},
  657. {label: 'zfrAmount', value: '融资金额'},
  658. {label: "zfrRate", value: "融资利率"},
  659. {label: "nickName", value: "经办人"},
  660. {label: "zfrExpireDate", value: "承诺还款时间"},
  661. {label: "zfrApplyDate", value: "融资申请日期"},
  662. {label: 'zfrLoanAmount', value: '实际放款金额'},
  663. {label: "zfrLoanDate", value: "融资放款日期"},
  664. {label: "zfrStatus", value: "融资状态"},
  665. ],
  666. checkListOne: [], //筛选列选中的数据列表--显示隐藏列用
  667. uncheckListOne: {}, //控制筛选列显示隐藏--显示隐藏列用
  668. firstSetOne: false,
  669. tableIdOne: "/sc-service/financeRecord/list/one",
  670. //已放款
  671. tableListTwo: [
  672. {label: "zfiNumner", value: "融信编号"},
  673. {label: "zfrNumber", value: "融资编号"},
  674. {label: "supplierScyName", value: "融资方"},
  675. {label: 'coreScyName', value: '开立方'},
  676. {label: 'zfrAmount', value: '融资金额'},
  677. {label: "zfrRate", value: "融资利率"},
  678. {label: "nickName", value: "经办人"},
  679. {label: "zfrExpireDate", value: "承诺还款时间"},
  680. {label: "zfrApplyDate", value: "融资申请日期"},
  681. {label: 'zfrLoanAmount', value: '实际放款金额'},
  682. {label: "zfrLoanDate", value: "融资放款日期"},
  683. {label: "zfrStatus", value: "融资状态"},
  684. ],
  685. checkListTwo: [], //筛选列选中的数据列表--显示隐藏列用
  686. uncheckListTwo: {}, //控制筛选列显示隐藏--显示隐藏列用
  687. firstSetTwo: false,
  688. tableIdTwo: "/sc-service/financeRecord/list/two",
  689. //放款失败
  690. tableListThree: [
  691. {label: "zfiNumner", value: "融信编号"},
  692. {label: "zfrNumber", value: "融资编号"},
  693. {label: "supplierScyName", value: "融资方"},
  694. {label: 'coreScyName', value: '开立方'},
  695. {label: 'zfrAmount', value: '融资金额'},
  696. {label: "zfrRate", value: "融资利率"},
  697. {label: "nickName", value: "经办人"},
  698. {label: "zfrExpireDate", value: "承诺还款时间"},
  699. {label: "zfrApplyDate", value: "融资申请日期"},
  700. {label: 'zfrLoanAmount', value: '实际放款金额'},
  701. {label: "zfrLoanDate", value: "融资放款日期"},
  702. {label: "zfrStatus", value: "融资状态"},
  703. ],
  704. checkListThree: [], //筛选列选中的数据列表--显示隐藏列用
  705. uncheckListThree: {}, //控制筛选列显示隐藏--显示隐藏列用
  706. firstSetThree: false,
  707. tableIdThree: "/sc-service/financeRecord/list/three",
  708. // 表单校验
  709. rules: {
  710. zfrloanAmount: [
  711. { required: true, message: "放款金额不能为空", trigger: "blur" },
  712. ],
  713. },
  714. selfDom : this,
  715. activeName : "first"
  716. };
  717. },
  718. created() {
  719. this.getList();
  720. this.getIngList();
  721. this.getEndList();
  722. this.getLoseList();
  723. this.getDicts("ser_zfr_status").then((response) => {
  724. this.statusOptions = response.data;
  725. });
  726. this.getDicts("zc_zfr_types").then((response) => {
  727. this.typesOptions = response.data;
  728. });
  729. this.getDicts("zc_zfr_query").then((response) => {
  730. this.queryOptions = response.data;
  731. });
  732. },
  733. activated() {
  734. this.getList();
  735. this.getIngList();
  736. this.getEndList();
  737. this.getLoseList();
  738. this.getDicts("ser_zfr_status").then((response) => {
  739. this.statusOptions = response.data;
  740. });
  741. },
  742. mounted() {
  743. this.columnQuery();
  744. },
  745. methods: {
  746. /** 查询全部融资记录列表 */
  747. getList() {
  748. this.loading = true;
  749. listRecord(this.queryParams).then((response) => {
  750. this.recordList = response.data.records;
  751. if(response.data.records[0]){
  752. this.companyType = response.data.records[0].companyType
  753. }
  754. this.total = response.data.total;
  755. this.loading = false;
  756. });
  757. },
  758. /** 查询融资中融资记录列表 */
  759. getIngList() {
  760. this.loadingIng = true;
  761. this.queryParamsIng.zfrStatus = "00";
  762. listRecord(this.queryParamsIng).then((response) => {
  763. this.recordIngList = response.data.records;
  764. this.totalIng = response.data.total;
  765. this.loadingIng = false;
  766. });
  767. },
  768. /** 查询已放款融资记录列表 */
  769. getEndList() {
  770. this.loadingEnd = true;
  771. this.queryParamsEnd.zfrStatus = "01";
  772. listRecord(this.queryParamsEnd).then((response) => {
  773. this.recordEndList = response.data.records;
  774. this.totalIng = response.data.total;
  775. this.loadingEnd = false;
  776. });
  777. },
  778. /** 查询融资失败融资记录列表 */
  779. getLoseList() {
  780. this.loadingLose = true;
  781. this.queryParamsLose.zfrStatus = "02";
  782. listRecord(this.queryParamsLose).then((response) => {
  783. this.recordLoseList = response.data.records;
  784. this.totalEnd = response.data.total;
  785. this.loadingLose = false;
  786. });
  787. },
  788. // 取消按钮
  789. cancel() {
  790. this.open = false;
  791. this.reset();
  792. },
  793. // 表单重置
  794. reset() {
  795. this.form = {
  796. zfrId: null,
  797. zfrFinanceId: null,
  798. zfrNumber: null,
  799. zfrAmount: null,
  800. zfrRate: null,
  801. zfrHandler: null,
  802. zfrRepaymentDate: null,
  803. zfrApplyDate: null,
  804. zfrLoanDate: null,
  805. zfrApplyAmount: null,
  806. zfrApplyType: null,
  807. zfrStatus: "00",
  808. zfrApproveStt: null,
  809. zfrProfitSpare1: null,
  810. zfrProfitSpare2: null,
  811. zfrProfitSpare3: null,
  812. zfrProfitSpare4: null,
  813. zfrProfitSpare5: null,
  814. zfrProfitSpare6: null,
  815. zfrProfitSpare7: null,
  816. zfrProfitSpare8: null,
  817. zfrProfitSpare9: null,
  818. createBy: null,
  819. createTime: null,
  820. updateBy: null,
  821. updateTime: null,
  822. zfrLoanFile: null,
  823. };
  824. this.resetForm("form");
  825. this.fileList = [];
  826. this.noneBtnImg = false;
  827. },
  828. /** 全部搜索按钮操作 */
  829. handleQuery() {
  830. this.queryParams.pageNum = 1;
  831. this.getList();
  832. },
  833. /** 全部重置按钮操作 */
  834. resetQuery() {
  835. this.resetForm("queryForm");
  836. this.handleQuery();
  837. },
  838. /** 融资中搜索按钮操作 */
  839. handleQueryIng() {
  840. this.queryParamsIng.pageNum = 1;
  841. this.getIngList();
  842. },
  843. /**融资中重置按钮操作 */
  844. resetQueryIng() {
  845. this.resetForm("queryFormIng");
  846. this.handleQueryIng();
  847. },
  848. /** 已放款搜索按钮操作 */
  849. handleQueryEnd() {
  850. this.queryParamsEnd.pageNum = 1;
  851. this.getEndList();
  852. },
  853. /**已放款重置按钮操作 */
  854. resetQueryEnd() {
  855. this.resetForm("queryFormEnd");
  856. this.handleQueryEnd();
  857. },
  858. /** 融资失败搜索按钮操作 */
  859. handleQueryLose() {
  860. this.queryParamsLose.pageNum = 1;
  861. this.getLoseList();
  862. },
  863. /*融资失败重置按钮操作 */
  864. resetQueryLose() {
  865. this.resetForm("queryFormLose");
  866. this.handleQueryLose();
  867. },
  868. //全部 多选框选中数据
  869. handleSelectionChange(selection) {
  870. this.ids = selection.map((item) => item.zfrId);
  871. this.single = selection.length !== 1;
  872. this.multiple = !selection.length;
  873. },
  874. // 融资中多选框选中数据
  875. handleSelectionChangeIng(selection) {
  876. this.ids = selection.map((item) => item.zfrId);
  877. this.single = selection.length !== 1;
  878. this.multiple = !selection.length;
  879. },
  880. /** 字典翻译 */
  881. statusFormat(row, column) {
  882. return this.selectDictLabel(this.statusOptions, row.zfrStatus);
  883. },
  884. /** 新增按钮操作 */
  885. handleAdd() {
  886. Cookies.set("/financeRecord/addFinanceRecord/", this.$route.fullPath);
  887. this.$router.push("/financeRecord/addFinanceRecord/");
  888. // this.reset();
  889. // this.open = true;
  890. // this.title = "添加融资记录";
  891. },
  892. /** 修改按钮操作 */
  893. handleUpdate(row) {
  894. this.reset();
  895. const zfrId = row.zfrId || this.ids;
  896. getRecord(zfrId).then((response) => {
  897. this.form = response.data;
  898. this.open = true;
  899. this.title = "修改融资记录";
  900. });
  901. },
  902. handleLoan(row) {
  903. this.reset();
  904. this.form.zfrId = row.zfrId || this.ids;
  905. this.form.zfrAmount = row.zfrAmount;
  906. this.$set(this.form, "zfrLoanAmount", row.zfrAmount);
  907. // this.form.zfrloanAmount = row.zfrAmount;
  908. this.form.zfrFinanceId = row.zfrFinanceId;
  909. this.open = true;
  910. this.title = "放款登记";
  911. },
  912. handleDetail(row) {
  913. this.reset();
  914. const zfrId = row.zfrId || this.ids;
  915. Cookies.set(
  916. "/financeRecord/detailFinanceRecord/" + zfrId,
  917. this.$route.fullPath
  918. );
  919. this.$router.push("/financeRecord/detailFinanceRecord/" + zfrId);
  920. },
  921. //盖章
  922. seal(row){
  923. const zfrId = row.zfrId || this.ids
  924. Cookies.set("/financeRecord/recordSeal/"+zfrId + "/", this.$route.fullPath)
  925. this.$router.push({ path: "/financeRecord/recordSeal/"+zfrId + "/" });
  926. },
  927. /** 提交审批 */
  928. handleApprove(row) {
  929. this.$confirm("确认要提交审批吗?", {
  930. confirmButtonText: "确定",
  931. cancelButtonText: "取消",
  932. type: "warning",
  933. })
  934. .then(function () {
  935. return examineApprove(row);
  936. })
  937. .then(() => {
  938. this.getList();
  939. this.msgSuccess("提交成功");
  940. })
  941. .catch(function () {});
  942. },
  943. /** 提交按钮 */
  944. submitForm() {
  945. this.$refs["form"].validate((valid) => {
  946. if (valid) {
  947. if (this.form.zfrId != null) {
  948. this.form.zfrLoanFile = this.fileList;
  949. updateRecord(this.form).then((response) => {
  950. this.msgSuccess("修改成功");
  951. this.open = false;
  952. this.getList();
  953. });
  954. } else {
  955. addRecord(this.form).then((response) => {
  956. this.msgSuccess("新增成功");
  957. this.open = false;
  958. this.getList();
  959. });
  960. }
  961. }
  962. });
  963. },
  964. /** 上传图片 */
  965. submitUpload() {
  966. this.$refs.upload.submit();
  967. },
  968. //文件移除提示
  969. handleRemove(file, fileList) {
  970. console.log(file);
  971. for (let i = 0; i < this.fileList.length; i++) {
  972. if (file.uid == this.fileList[i].uid) {
  973. this.fileList.splice(i, 1);
  974. break;
  975. }
  976. }
  977. this.noneBtnImg = fileList.length >= this.limitCountImg;
  978. //return this.$confirm(`确定移除 ${ file.name }?`);
  979. },
  980. dealImgChange(file, fileList) {
  981. this.noneBtnImg = fileList.length >= this.limitCountImg;
  982. },
  983. handleExceed(files, fileList) {
  984. this.$message.warning(`当前限制选择 1 个文件`);
  985. },
  986. handlePictureCardPreview(file) {
  987. this.dialogImageUrl = file.url;
  988. this.dialogVisible = true;
  989. },
  990. //手动上传文件触发
  991. httpRequest(param) {
  992. let fileObj = param.file; // 相当于input里取得的files
  993. let fd = new FormData(); // FormData 对象
  994. fd.append("file", fileObj); // 文件对象
  995. fd.append("fileType", "00"); //文件类型
  996. const loading = this.$loading({
  997. lock: true,
  998. text: "Loading",
  999. spinner: "el-icon-loading",
  1000. background: "rgba(0, 0, 0, 0.7)",
  1001. });
  1002. uploadFileNew(fd)
  1003. .then((response) => {
  1004. if (response) {
  1005. // this.form.eeiImgUrl = response.url
  1006. this.fileList.push({
  1007. uid: response.fileId,
  1008. url: response.url + "/" + getToken(),
  1009. });
  1010. console.log(response.url);
  1011. setTimeout(() => {
  1012. loading.close();
  1013. }, 2000);
  1014. }
  1015. })
  1016. .catch((response) => {
  1017. loading.close();
  1018. });
  1019. },
  1020. /** 删除按钮操作 */
  1021. handleDelete(row) {
  1022. const zfrIds = row.zfrId || this.ids;
  1023. this.$confirm(
  1024. '是否确认删除融资记录编号为"' + zfrIds + '"的数据项?',
  1025. "警告",
  1026. {
  1027. confirmButtonText: "确定",
  1028. cancelButtonText: "取消",
  1029. type: "warning",
  1030. }
  1031. )
  1032. .then(function () {
  1033. return delRecord(zfrIds);
  1034. })
  1035. .then(() => {
  1036. this.getList();
  1037. this.msgSuccess("删除成功");
  1038. });
  1039. },
  1040. /* 金额格式化 */
  1041. moneyFormat(row, column, cellValue) {
  1042. if(cellValue){
  1043. cellValue += "";
  1044. if (!cellValue.includes(".")) cellValue += ".";
  1045. return cellValue
  1046. .replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1) {
  1047. return $1 + ",";
  1048. })
  1049. .replace(/\.$/, "");
  1050. }
  1051. },
  1052. //获取当前客户是否之前设置过列展示隐藏
  1053. columnQuery() {
  1054. //获取页面路径
  1055. var psfPagePath = window.location.pathname;
  1056. //用请求后台的url作为唯一标识
  1057. var psfTableName = this.tableId;
  1058. var columnForm = {};
  1059. columnForm.psfPagePath = psfPagePath;
  1060. columnForm.psfTableName = psfTableName;
  1061. columnQuery(columnForm).then(response => {
  1062. if (response.data && response.data.psfShowData) {
  1063. this.checkList = response.data.psfShowData;
  1064. }
  1065. this.filter();
  1066. });
  1067. },
  1068. //控制隐藏显示的函数
  1069. filter(checkList) {
  1070. if (this.activeName == "first") {
  1071. if (!!checkList) {
  1072. this.checkList = checkList;
  1073. }
  1074. this.columnfilter(this.firstSet, this.checkList, this.tableList, this.uncheckList);
  1075. } else if (this.activeName == "second") {
  1076. if (!!checkList) {
  1077. this.checkListOne = checkList;
  1078. }
  1079. this.columnfilter(this.firstSetOne, this.checkListOne, this.tableListOne, this.uncheckListOne);
  1080. } else if (this.activeName == "third") {
  1081. if (!!checkList) {
  1082. this.checkListTwo = checkList;
  1083. }
  1084. this.columnfilter(this.firstSetTwo, this.checkListTwo, this.tableListTwo, this.uncheckListTwo);
  1085. } else if (this.activeName == "fourth") {
  1086. if (!!checkList) {
  1087. this.checkListThree = checkList;
  1088. }
  1089. this.columnfilter(this.firstSetThree, this.checkListThree, this.tableListThree, this.uncheckListThree);
  1090. }
  1091. },
  1092. //获取当前客户是否之前设置过列展示隐藏
  1093. columnQueryOne() {
  1094. //获取页面路径
  1095. var psfPagePath = window.location.pathname;
  1096. //用请求后台的url作为唯一标识
  1097. var psfTableName = this.tableIdOne;
  1098. var columnForm = {};
  1099. columnForm.psfPagePath = psfPagePath;
  1100. columnForm.psfTableName = psfTableName;
  1101. columnQuery(columnForm).then(response => {
  1102. if (response.data && response.data.psfShowData) {
  1103. this.checkListOne = response.data.psfShowData;
  1104. }
  1105. this.filter();
  1106. });
  1107. },
  1108. //获取当前客户是否之前设置过列展示隐藏
  1109. columnQueryTwo() {
  1110. //获取页面路径
  1111. var psfPagePath = window.location.pathname;
  1112. //用请求后台的url作为唯一标识
  1113. var psfTableName = this.tableIdTwo;
  1114. var columnForm = {};
  1115. columnForm.psfPagePath = psfPagePath;
  1116. columnForm.psfTableName = psfTableName;
  1117. columnQuery(columnForm).then(response => {
  1118. if (response.data && response.data.psfShowData) {
  1119. this.checkListTwo = response.data.psfShowData;
  1120. }
  1121. this.filter();
  1122. });
  1123. },
  1124. //获取当前客户是否之前设置过列展示隐藏
  1125. columnQueryThree() {
  1126. //获取页面路径
  1127. var psfPagePath = window.location.pathname;
  1128. //用请求后台的url作为唯一标识
  1129. var psfTableName = this.tableIdThree;
  1130. var columnForm = {};
  1131. columnForm.psfPagePath = psfPagePath;
  1132. columnForm.psfTableName = psfTableName;
  1133. columnQuery(columnForm).then(response => {
  1134. if (response.data && response.data.psfShowData) {
  1135. this.checkListThree = response.data.psfShowData;
  1136. }
  1137. this.filter();
  1138. });
  1139. },
  1140. /** 导出按钮操作 */
  1141. handleExport(row) {
  1142. const zfrFinanceId = row.zfrFinanceId || this.ids;
  1143. this.download(
  1144. "sc-service/financeRecord/export/" + zfrFinanceId,
  1145. {},
  1146. `融资管理附件${this.parseTime(new Date(),'{y}{m}{d}{h}{m}{s}')}.zip`
  1147. );
  1148. },
  1149. columnfilter(firstSet, checkList, tableList, uncheckList){
  1150. if (this.activeName == "first") {
  1151. firstSet = this.firstSet;
  1152. } else if (this.activeName == "second") {
  1153. firstSet = this.firstSetOne;
  1154. } else if (this.activeName == "third") {
  1155. firstSet = this.firstSetTwo;
  1156. } else if (this.activeName == "fourth") {
  1157. firstSet = this.firstSetThree;
  1158. }
  1159. if (firstSet && checkList.length == 0) {
  1160. this.$message.warning("配置显示列不能为空!");
  1161. return;
  1162. }
  1163. if (this.activeName == "first") {
  1164. this.firstSet = true;
  1165. } else if (this.activeName == "second") {
  1166. this.firstSetOne = true;
  1167. } else if (this.activeName == "third") {
  1168. this.firstSetTwo = true;
  1169. } else if (this.activeName == "fourth") {
  1170. this.firstSetThree = true;
  1171. }
  1172. //初始化数据
  1173. if (checkList.length == 0) {
  1174. for (let index in tableList) {
  1175. let table = tableList[index];
  1176. checkList.push(table.label);
  1177. }
  1178. }
  1179. for (let index in tableList) {
  1180. let table = tableList[index];
  1181. uncheckList[table.label] = true;
  1182. }
  1183. //数据准备
  1184. for (let item in uncheckList) {
  1185. uncheckList[item] = false;
  1186. }
  1187. //数据处理
  1188. for (let index in checkList) {
  1189. let name = checkList[index];
  1190. if (name in uncheckList) {
  1191. uncheckList[name] = true;
  1192. }
  1193. }
  1194. this.$forceUpdate();
  1195. },
  1196. handleClick (tab, event) {
  1197. if (this.activeName == "first") {
  1198. this.columnQuery();
  1199. } else if (this.activeName == "second") {
  1200. this.columnQueryOne();
  1201. } else if (this.activeName == "third") {
  1202. this.columnQueryTwo();
  1203. } else if (this.activeName == "fourth") {
  1204. this.columnQueryThree();
  1205. }
  1206. }
  1207. },
  1208. };
  1209. </script>
  1210. <style>
  1211. .showUoload .el-upload--picture-card{
  1212. width:110px;
  1213. height:110px;
  1214. line-height:110px;
  1215. }
  1216. .uoloadSty .el-upload--picture-card{
  1217. display:none;
  1218. }
  1219. </style>