financeRecord.vue 50 KB

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