personalRealFundStat.vue 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. <template>
  2. <div class="app-container organization-index">
  3. <div class="title-container">
  4. <breadcrumb id="breadcrumb-container" class="breadcrumb-container"/>
  5. </div>
  6. <el-tabs v-model="activeName" @tab-click="handleClick" type="border-card" style="margin-top: 10px;">
  7. <el-tab-pane label="个贷实收款" name="personal">
  8. <y-page-list-layout :get-page-list="getPersonalStat" :page-list="personalStat" :page-para="listQuery1">
  9. <template slot="left">
  10. <el-input v-model="listQuery1.orderId" placeholder="项目编号" clearable style="width: 200px;float: left;">
  11. </el-input>
  12. <el-date-picker clearable v-model="claimDate" type="daterange" align="center" unlink-panels
  13. range-separator="至" start-placeholder="认领日期(开始)" end-placeholder="认领日期(结束)" :picker-options="pickerOptions"
  14. value-format="yyyy-MM-dd" style="margin-left: 20px;float: left;">
  15. </el-date-picker>
  16. <el-input v-model="listQuery1.claimAmount" placeholder="认领金额" clearable style="margin-left: 20px;width: 200px;float: left;">
  17. </el-input>
  18. <el-select clearable v-model="listQuery1.ifSaveFile" placeholder="归档状态" style="margin-left: 20px;width: 200px;float: left;">
  19. <el-option :value="false" label="未归档">未归档</el-option>
  20. <el-option :value="true" label="已归档">已归档</el-option>
  21. </el-select>
  22. <el-input v-model="listQuery1.claimUser" placeholder="认领人" clearable style="margin-left: 20px;width: 200px;float: left;">
  23. </el-input>
  24. <el-button class="filter-item" style="margin-left:20px;float: left;" type="primary" @click="searchList1" round>搜索
  25. </el-button>
  26. <el-button class="filter-item" style="float: left;" round type="success" @click="resetSearch1()">重置
  27. </el-button>
  28. <el-button class="filter-item" style="float: left;" round type="info" @click="exportPersonalStat()">导出
  29. </el-button>
  30. </template>
  31. <el-table
  32. size="medium"
  33. slot="table"
  34. row-key="id"
  35. :data="personalStat.records"
  36. fit
  37. highlight-current-row
  38. :header-row-style="{color: '#333333'}"
  39. style="border-left: 1px solid #EBECED;border-right: 1px solid #EBECED;color: #333333;">
  40. <el-table-column label="归档状况" align="center">
  41. <template slot-scope="{row}">
  42. <span>{{ row.ifSaveFile?'已归档':'未归档' }}</span>
  43. </template>
  44. </el-table-column>
  45. <el-table-column label="项目编号" width="150" align="center">
  46. <template slot-scope="{row}">
  47. <span>{{ row.orderId }}</span>
  48. </template>
  49. </el-table-column>
  50. <el-table-column label="项目名称" width="200" align="center">
  51. <template slot-scope="{row}">
  52. <span>{{ row.location }}</span>
  53. </template>
  54. </el-table-column>
  55. <el-table-column label="所属部门" align="center">
  56. <template slot-scope="{row}">
  57. <span>{{ row.marketDepartment }}</span>
  58. </template>
  59. </el-table-column>
  60. <el-table-column label="客户经理" align="center">
  61. <template slot-scope="{row}">
  62. <span>{{ row.clientManager }}</span>
  63. </template>
  64. </el-table-column>
  65. <el-table-column label="入账日期" width="110" align="center">
  66. <template slot-scope="{row}">
  67. <span>{{ row.payDatetime }}</span>
  68. </template>
  69. </el-table-column>
  70. <el-table-column label="认领日期" width="110" align="center">
  71. <template slot-scope="{row}">
  72. <span>{{ row.claimDatetime }}</span>
  73. </template>
  74. </el-table-column>
  75. <el-table-column label="实收金额(元)" align="center">
  76. <template slot-scope="{row}">
  77. <span style="color:red">{{ row.claimAmount }}</span>
  78. </template>
  79. </el-table-column>
  80. <el-table-column label="认领人" align="center">
  81. <template slot-scope="{row}">
  82. <span>{{ row.claimUser }}</span>
  83. </template>
  84. </el-table-column>
  85. <el-table-column label="客户名称" align="center">
  86. <template slot-scope="{row}">
  87. <span>{{ row.clientName }}</span>
  88. </template>
  89. </el-table-column>
  90. <el-table-column label="业务来源" align="center">
  91. <template slot-scope="{row}">
  92. <span>{{ row.clientSubName }}</span>
  93. </template>
  94. </el-table-column>
  95. <el-table-column label="委托人" align="center">
  96. <template slot-scope="{row}">
  97. <span>{{ row.bailorA }}</span>
  98. </template>
  99. </el-table-column>
  100. <el-table-column label="评估价值(万元)" align="center">
  101. <template slot-scope="{row}">
  102. <span>{{ row.amount }}</span>
  103. </template>
  104. </el-table-column>
  105. </el-table>
  106. </y-page-list-layout>
  107. </el-tab-pane>
  108. </el-tabs>
  109. </div>
  110. </template>
  111. <script>
  112. import Breadcrumb from '@/components/Breadcrumb'
  113. import YPageListLayout from '@/components/YPageListLayout'
  114. export default {
  115. name: 'personalRealFundStat',
  116. components: {
  117. Breadcrumb,
  118. YPageListLayout
  119. },
  120. data() {
  121. return {
  122. activeName: 'personal',
  123. pickerOptions: {
  124. shortcuts: [{
  125. text: '最近一周',
  126. onClick(picker) {
  127. const end = new Date();
  128. const start = new Date();
  129. start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
  130. picker.$emit('pick', [start, end]);
  131. }
  132. }, {
  133. text: '最近一个月',
  134. onClick(picker) {
  135. const end = new Date();
  136. const start = new Date();
  137. start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
  138. picker.$emit('pick', [start, end]);
  139. }
  140. }, {
  141. text: '最近三个月',
  142. onClick(picker) {
  143. const end = new Date();
  144. const start = new Date();
  145. start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
  146. picker.$emit('pick', [start, end]);
  147. }
  148. }]
  149. },
  150. claimDate: '',
  151. listQuery1: {
  152. page: 1,
  153. size: 10,
  154. descs: 'id',
  155. },
  156. personalStat:{
  157. records:[]
  158. }
  159. }
  160. },
  161. created() {
  162. this.getPersonalStat();
  163. },
  164. methods: {
  165. handleClick(tab, event) {
  166. },
  167. resetSearch1() {
  168. this.$router.push({ query: {} });
  169. this.claimDate = '';
  170. this.listQuery1 = {
  171. current: 1,
  172. size: 10,
  173. descs: 'id',
  174. startTime:null,
  175. endTime:null,
  176. }
  177. this.getPersonalStat()
  178. },
  179. searchList1() {
  180. // 重置分页
  181. this.listQuery1.page = 1
  182. this.listQuery1.size = 10
  183. if (this.claimDate){
  184. this.listQuery1.startTime = this.claimDate[0]+' 00:00:00';
  185. this.listQuery1.endTime = this.claimDate[1]+ ' 23:59:59';
  186. }
  187. this.getPersonalStat()
  188. },
  189. getPersonalStat(){
  190. this.$api.financeClaim.getPersonalStat(this.listQuery1).then(res=>{
  191. if (res.code === 200){
  192. this.personalStat = res.data;
  193. }
  194. })
  195. },
  196. exportPersonalStat(){
  197. this.$utils.exportUtil(
  198. "/financeClaim/personal/stat/export", this.listQuery1,
  199. "导出"
  200. );
  201. }
  202. }
  203. }
  204. </script>
  205. <style scoped lang="scss">
  206. </style>