financeRecord.vue 55 KB

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