|  | @@ -21,10 +21,10 @@
 | 
	
		
			
				|  |  |        <div style="margin-top: 15px">
 | 
	
		
			
				|  |  |          <el-form :inline="true" :model="listQuery" size="small" label-width="140px">
 | 
	
		
			
				|  |  |            <el-form-item label="输入搜索:">
 | 
	
		
			
				|  |  | -            <el-input v-model="listQuery.id" style="width: 203px" placeholder="服务单号"></el-input>
 | 
	
		
			
				|  |  | +            <el-input v-model="listQuery.id" class="input-width" placeholder="服务单号"></el-input>
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |            <el-form-item label="处理状态:">
 | 
	
		
			
				|  |  | -            <el-select v-model="listQuery.status" placeholder="全部" clearable>
 | 
	
		
			
				|  |  | +            <el-select v-model="listQuery.status" placeholder="全部" clearable class="input-width">
 | 
	
		
			
				|  |  |                <el-option v-for="item in statusOptions"
 | 
	
		
			
				|  |  |                           :key="item.value"
 | 
	
		
			
				|  |  |                           :label="item.label"
 | 
	
	
		
			
				|  | @@ -34,6 +34,7 @@
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |            <el-form-item label="申请时间:">
 | 
	
		
			
				|  |  |              <el-date-picker
 | 
	
		
			
				|  |  | +              class="input-width"
 | 
	
		
			
				|  |  |                v-model="listQuery.createTime"
 | 
	
		
			
				|  |  |                value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  |                type="date"
 | 
	
	
		
			
				|  | @@ -41,10 +42,11 @@
 | 
	
		
			
				|  |  |              </el-date-picker>
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |            <el-form-item label="操作人员:">
 | 
	
		
			
				|  |  | -            <el-input v-model="listQuery.handleMan" style="width: 203px" placeholder="全部"></el-input>
 | 
	
		
			
				|  |  | +            <el-input v-model="listQuery.handleMan" class="input-width" placeholder="全部"></el-input>
 | 
	
		
			
				|  |  |            </el-form-item>
 | 
	
		
			
				|  |  |            <el-form-item label="处理时间:">
 | 
	
		
			
				|  |  |              <el-date-picker
 | 
	
		
			
				|  |  | +              class="input-width"
 | 
	
		
			
				|  |  |                v-model="listQuery.handleTime"
 | 
	
		
			
				|  |  |                value-format="yyyy-MM-dd"
 | 
	
		
			
				|  |  |                type="date"
 | 
	
	
		
			
				|  | @@ -75,7 +77,7 @@
 | 
	
		
			
				|  |  |            <template slot-scope="scope">{{scope.row.memberUsername}}</template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  |          <el-table-column label="退款金额" width="180" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">¥{{scope.row.productRealPrice*scope.row.productCount}}</template>
 | 
	
		
			
				|  |  | +          <template slot-scope="scope">¥{{scope.row | formatReturnAmount}}</template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  |          <el-table-column label="申请状态" width="180" align="center">
 | 
	
		
			
				|  |  |            <template slot-scope="scope">{{scope.row.status | formatStatus}}</template>
 | 
	
	
		
			
				|  | @@ -87,16 +89,48 @@
 | 
	
		
			
				|  |  |            <template slot-scope="scope">
 | 
	
		
			
				|  |  |              <el-button
 | 
	
		
			
				|  |  |              size="mini"
 | 
	
		
			
				|  |  | -            @click="handleViewOrder(scope.$index, scope.row)">查看详情</el-button>
 | 
	
		
			
				|  |  | +            @click="handleViewDetail(scope.$index, scope.row)">查看详情</el-button>
 | 
	
		
			
				|  |  |            </template>
 | 
	
		
			
				|  |  |          </el-table-column>
 | 
	
		
			
				|  |  |        </el-table>
 | 
	
		
			
				|  |  |      </div>
 | 
	
		
			
				|  |  | +    <div class="batch-operate-container">
 | 
	
		
			
				|  |  | +      <el-select
 | 
	
		
			
				|  |  | +        size="small"
 | 
	
		
			
				|  |  | +        v-model="operateType" placeholder="批量操作">
 | 
	
		
			
				|  |  | +        <el-option
 | 
	
		
			
				|  |  | +          v-for="item in operateOptions"
 | 
	
		
			
				|  |  | +          :key="item.value"
 | 
	
		
			
				|  |  | +          :label="item.label"
 | 
	
		
			
				|  |  | +          :value="item.value">
 | 
	
		
			
				|  |  | +        </el-option>
 | 
	
		
			
				|  |  | +      </el-select>
 | 
	
		
			
				|  |  | +      <el-button
 | 
	
		
			
				|  |  | +        style="margin-left: 20px"
 | 
	
		
			
				|  |  | +        class="search-button"
 | 
	
		
			
				|  |  | +        @click="handleBatchOperate()"
 | 
	
		
			
				|  |  | +        type="primary"
 | 
	
		
			
				|  |  | +        size="small">
 | 
	
		
			
				|  |  | +        确定
 | 
	
		
			
				|  |  | +      </el-button>
 | 
	
		
			
				|  |  | +    </div>
 | 
	
		
			
				|  |  | +    <div class="pagination-container">
 | 
	
		
			
				|  |  | +      <el-pagination
 | 
	
		
			
				|  |  | +        background
 | 
	
		
			
				|  |  | +        @size-change="handleSizeChange"
 | 
	
		
			
				|  |  | +        @current-change="handleCurrentChange"
 | 
	
		
			
				|  |  | +        layout="total, sizes,prev, pager, next,jumper"
 | 
	
		
			
				|  |  | +        :current-page.sync="listQuery.pageNum"
 | 
	
		
			
				|  |  | +        :page-size="listQuery.pageSize"
 | 
	
		
			
				|  |  | +        :page-sizes="[5,10,15]"
 | 
	
		
			
				|  |  | +        :total="total">
 | 
	
		
			
				|  |  | +      </el-pagination>
 | 
	
		
			
				|  |  | +    </div>
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  |    import {formatDate} from '@/utils/date';
 | 
	
		
			
				|  |  | -  import {fetchList} from '@/api/returnApply';
 | 
	
		
			
				|  |  | +  import {fetchList,deleteApply} from '@/api/returnApply';
 | 
	
		
			
				|  |  |    const defaultListQuery = {
 | 
	
		
			
				|  |  |      pageNum: 1,
 | 
	
		
			
				|  |  |      pageSize: 10,
 | 
	
	
		
			
				|  | @@ -134,7 +168,14 @@
 | 
	
		
			
				|  |  |          list:null,
 | 
	
		
			
				|  |  |          total:null,
 | 
	
		
			
				|  |  |          listLoading:false,
 | 
	
		
			
				|  |  | -        multipleSelection:[]
 | 
	
		
			
				|  |  | +        multipleSelection:[],
 | 
	
		
			
				|  |  | +        operateType:1,
 | 
	
		
			
				|  |  | +        operateOptions: [
 | 
	
		
			
				|  |  | +          {
 | 
	
		
			
				|  |  | +            label: "批量删除",
 | 
	
		
			
				|  |  | +            value: 1
 | 
	
		
			
				|  |  | +          }
 | 
	
		
			
				|  |  | +        ],
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      created(){
 | 
	
	
		
			
				|  | @@ -154,12 +195,64 @@
 | 
	
		
			
				|  |  |              return defaultStatusOptions[i].label;
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      formatReturnAmount(row){
 | 
	
		
			
				|  |  | +        return row.productRealPrice*row.productCount;
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      methods:{
 | 
	
		
			
				|  |  |        handleSelectionChange(val){
 | 
	
		
			
				|  |  |          this.multipleSelection = val;
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | +      handleResetSearch() {
 | 
	
		
			
				|  |  | +        this.listQuery = Object.assign({}, defaultListQuery);
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      handleSearchList() {
 | 
	
		
			
				|  |  | +        this.listQuery.pageNum = 1;
 | 
	
		
			
				|  |  | +        this.getList();
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      handleViewDetail(){},
 | 
	
		
			
				|  |  | +      handleBatchOperate(){
 | 
	
		
			
				|  |  | +        if(this.multipleSelection==null||this.multipleSelection.length<1){
 | 
	
		
			
				|  |  | +          this.$message({
 | 
	
		
			
				|  |  | +            message: '请选择要操作的申请',
 | 
	
		
			
				|  |  | +            type: 'warning',
 | 
	
		
			
				|  |  | +            duration: 1000
 | 
	
		
			
				|  |  | +          });
 | 
	
		
			
				|  |  | +          return;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        if(this.operateType===1){
 | 
	
		
			
				|  |  | +          //批量删除
 | 
	
		
			
				|  |  | +          this.$confirm('是否要进行删除操作?', '提示', {
 | 
	
		
			
				|  |  | +            confirmButtonText: '确定',
 | 
	
		
			
				|  |  | +            cancelButtonText: '取消',
 | 
	
		
			
				|  |  | +            type: 'warning'
 | 
	
		
			
				|  |  | +          }).then(() => {
 | 
	
		
			
				|  |  | +            let params = new URLSearchParams();
 | 
	
		
			
				|  |  | +            let ids=[];
 | 
	
		
			
				|  |  | +            for(let i=0;i<this.multipleSelection.length;i++){
 | 
	
		
			
				|  |  | +              ids.push(this.multipleSelection[i].id);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            params.append("ids",ids);
 | 
	
		
			
				|  |  | +            deleteApply(params).then(response=>{
 | 
	
		
			
				|  |  | +              this.getList();
 | 
	
		
			
				|  |  | +              this.$message({
 | 
	
		
			
				|  |  | +                type: 'success',
 | 
	
		
			
				|  |  | +                message: '删除成功!'
 | 
	
		
			
				|  |  | +              });
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      handleSizeChange(val){
 | 
	
		
			
				|  |  | +        this.listQuery.pageNum = 1;
 | 
	
		
			
				|  |  | +        this.listQuery.pageSize = val;
 | 
	
		
			
				|  |  | +        this.getList();
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      handleCurrentChange(val){
 | 
	
		
			
				|  |  | +        this.listQuery.pageNum = val;
 | 
	
		
			
				|  |  | +        this.getList();
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  |        getList(){
 | 
	
		
			
				|  |  |          this.listLoading=true;
 | 
	
		
			
				|  |  |          fetchList(this.listQuery).then(response => {
 | 
	
	
		
			
				|  | @@ -171,6 +264,10 @@
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  | -<style></style>
 | 
	
		
			
				|  |  | +<style scoped>
 | 
	
		
			
				|  |  | +  .input-width {
 | 
	
		
			
				|  |  | +    width: 203px;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +</style>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 |