saveFileDoneList.vue 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. <template>
  2. <div class="app-container">
  3. <div class="title-container">
  4. <breadcrumb id="breadcrumb-container" class="breadcrumb-container" />
  5. </div>
  6. <y-page-list-layout :page-list="pageData" :page-para="listQuery" :get-page-list="getList">
  7. <template slot="left">
  8. <el-input v-model="listQuery.keyword" placeholder="关键字搜索..." clearable
  9. style="margin-left: 20px;width: 500px;float: left;">
  10. </el-input>
  11. <el-date-picker
  12. style="margin-left: 20px;float: left;"
  13. v-model="saveFileDate"
  14. type="daterange"
  15. align="center"
  16. unlink-panels
  17. range-separator="至"
  18. start-placeholder="归档日期(开始)"
  19. end-placeholder="归档日期(结束)"
  20. :picker-options="pickerOptions" value-format="yyyy-MM-dd">
  21. </el-date-picker>
  22. <el-button class="filter-item" style="margin-left: 10px;float: left;" type="primary" @click="searchList" round>搜索
  23. </el-button>
  24. <el-button class="filter-item" style="float: left;" round type="success" @click="resetSearch()">重置
  25. </el-button>
  26. </template>
  27. <parentTable :data="pageData.records" slot="table" style="width: 100%;">
  28. <el-table-column label="坐落" align="center" width="200">
  29. <template slot-scope="{row}">
  30. <span>{{ row.location }}</span>
  31. </template>
  32. </el-table-column>
  33. <el-table-column label="项目编号" align="center" width="140" >
  34. <template slot-scope="{row}">
  35. <span>{{ row.orderId }}</span>
  36. </template>
  37. </el-table-column>
  38. <el-table-column label="面积" align="center" >
  39. <template slot-scope="{row}">
  40. <span>{{ row.acreage }}</span>
  41. </template>
  42. </el-table-column>
  43. <el-table-column label="单价" align="center" >
  44. <template slot-scope="{row}">
  45. <span>{{ row.price }}</span>
  46. </template>
  47. </el-table-column>
  48. <el-table-column label="总价" align="center" >
  49. <template slot-scope="{row}">
  50. <span>{{ row.amount }}</span>
  51. </template>
  52. </el-table-column>
  53. <el-table-column label="客户名称" align="center" width="130">
  54. <template slot-scope="{row}">
  55. <span>{{ row.clientName==null?'-': row.clientName }}</span>
  56. </template>
  57. </el-table-column>
  58. <el-table-column label="业务来源" align="center" width="130">
  59. <template slot-scope="{row}">
  60. <span>{{ row.clientSubName }}</span>
  61. </template>
  62. </el-table-column>
  63. <el-table-column label="客户经理" align="center">
  64. <template slot-scope="{row}">
  65. <span>{{ row.clientManager }}</span>
  66. </template>
  67. </el-table-column>
  68. <el-table-column label="实勘人" align="center">
  69. <template slot-scope="{row}">
  70. <span>{{ row.outwardStaffName }}</span>
  71. </template>
  72. </el-table-column>
  73. <el-table-column label="内业人员" align="center">
  74. <template slot-scope="{row}">
  75. <span>{{ row.inwardStaffName }}</span>
  76. </template>
  77. </el-table-column>
  78. <el-table-column label="定价人员" align="center">
  79. <template slot-scope="{row}">
  80. <span>{{ row.pricingStaffName }}</span>
  81. </template>
  82. </el-table-column>
  83. <el-table-column label="实收款(元)" align="center">
  84. <template slot-scope="{row}">
  85. <span style="color:red;font-weight:bold">{{ row.realAmount }}</span>
  86. </template>
  87. </el-table-column>
  88. <el-table-column label="下单时间" align="center" width="100">
  89. <template slot-scope="{row}">
  90. {{ row.created }}
  91. </template>
  92. </el-table-column>
  93. <el-table-column label="归档日期" align="center" width="100">
  94. <template slot-scope="{row}">
  95. <span>{{ row.saveFileDate }}</span>
  96. </template>
  97. </el-table-column>
  98. <el-table-column label="操作" align="center" width="130">
  99. <template slot-scope="{row}">
  100. <el-button type="success" round @click="toDetail(row)">订单详情</el-button>
  101. </template>
  102. </el-table-column>
  103. </parentTable>
  104. </y-page-list-layout>
  105. </div>
  106. </template>
  107. <script>
  108. import YPageListLayout from '@/components/YPageListLayout'
  109. import Breadcrumb from '@/components/Breadcrumb'
  110. export default {
  111. name: 'saveFileDonePersonalList',
  112. components: {
  113. Breadcrumb,
  114. YPageListLayout,
  115. },
  116. filters: {
  117. },
  118. data() {
  119. return {
  120. pageData: { records: [] },
  121. listQuery: {
  122. page: 1,
  123. size: 10,
  124. descs: 'id',
  125. },
  126. saveFileDate:'',
  127. pickerOptions: {
  128. shortcuts: [{
  129. text: '最近一周',
  130. onClick(picker) {
  131. const end = new Date();
  132. const start = new Date();
  133. start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
  134. picker.$emit('pick', [start, end]);
  135. }
  136. }, {
  137. text: '最近一个月',
  138. onClick(picker) {
  139. const end = new Date();
  140. const start = new Date();
  141. start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
  142. picker.$emit('pick', [start, end]);
  143. }
  144. }, {
  145. text: '最近三个月',
  146. onClick(picker) {
  147. const end = new Date();
  148. const start = new Date();
  149. start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
  150. picker.$emit('pick', [start, end]);
  151. }
  152. }]
  153. },
  154. }
  155. },
  156. created() {
  157. this.getList();
  158. },
  159. methods: {
  160. resetSearch() {
  161. this.$router.push({ query: {} });
  162. this.saveFileDate='';
  163. this.listQuery = {
  164. current: 1,
  165. size: 10,
  166. descs: 'id',
  167. }
  168. this.getList()
  169. },
  170. searchList() {
  171. // 重置分页
  172. this.listQuery.page = 1
  173. this.listQuery.size = 10
  174. if (this.saveFileDate){
  175. this.listQuery.startDate = this.saveFileDate[0]+' 00:00:00';
  176. this.listQuery.endDate = this.saveFileDate[1]+ ' 23:59:59';
  177. }
  178. this.getList()
  179. },
  180. getList() {
  181. this.$api.personal.saveFileDone(this.listQuery).then(res=>{
  182. if (res.code ===200){
  183. this.pageData = res.data;
  184. }
  185. })
  186. },
  187. toDetail(row){
  188. this.$router.push(`/personal/readonly/detail?id=${row.id}&orderId=${row.orderId}&back=${'/personal/saveFile'}`)
  189. },
  190. },
  191. }
  192. </script>
  193. <style lang="scss" scoped>
  194. </style>