ソースを参照

销售改代收 加售后

yangjunfeng 5 年 前
コミット
48d816c82b

+ 431 - 0
CallCenterWeb.UI/src/views/orderManagement/changeCollectionOrderList/afterSale.vue

@@ -0,0 +1,431 @@
1
+<template>
2
+  <div v-loading="loading">
3
+    <el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="150px" class="order_form">
4
+      <el-form-item label="订单编号" prop="F_OrderId" >
5
+        <el-input v-model="ruleForm.F_OrderId" disabled />
6
+      </el-form-item>
7
+      <el-form-item label="售后类型" prop="F_Type" >
8
+        <el-select v-model="ruleForm.F_Type" class="form_select" filterable clearable placeholder="请选择售后类型" @change="changeType">
9
+          <!-- <el-option label="调换" value="1"></el-option>
10
+          <el-option label="退货" value="2"></el-option> -->
11
+          <!-- <el-option label="部分退货" value="3"></el-option> -->
12
+          <!-- <el-option label="对发货" value="4"></el-option>
13
+          <el-option label="补发货" value="5"></el-option>
14
+          <el-option label="补差额" value="6"></el-option> -->
15
+          <!-- <el-option label="错发" value="7"></el-option> -->
16
+          <!-- <el-option label="漏发" value="8"></el-option> -->
17
+          <el-option label="改代收" value="9"/>
18
+        </el-select>
19
+      </el-form-item>
20
+      <el-form-item label="变动金额" prop="F_Money">
21
+        <el-input-number v-model="ruleForm.F_Money" controls-position="right" class="form_input_number"/>
22
+        <!-- <el-input v-model="ruleForm.F_Money" placeholder="-需要退 +用户需补"/> -->
23
+      </el-form-item>
24
+      <el-form-item label="售后原因" prop="F_ReturnType" >
25
+        <el-select v-model="ruleForm.F_ReturnType" class="form_select" filterable placeholder="请选择售后原因">
26
+          <el-option label="改代收" value="改代收"/>
27
+          <!-- <el-option v-for="item in afterSaleReasonsList" :key="item.F_ValueId" :label="item.F_Value" :value="item.F_Value"></el-option> -->
28
+        </el-select>
29
+      </el-form-item>
30
+      <!-- <el-form-item label="售后原因" prop="F_ReturnDes" >
31
+        <el-input v-model="ruleForm.F_ReturnDes" placeholder="请输入售后原因" />
32
+      </el-form-item> -->
33
+      <el-form-item label="退回商品状态" prop="F_ProductStatus" >
34
+        <el-input v-model="ruleForm.F_ProductStatus" placeholder="请输入退回商品状态" />
35
+      </el-form-item>
36
+      <el-form-item label="处理原因" prop="F_Reason" >
37
+        <el-input v-model="ruleForm.F_Reason" placeholder="请输入处理原因" />
38
+      </el-form-item>
39
+      <el-form-item label="客户意愿" prop="F_Aspiration" >
40
+        <el-input v-model="ruleForm.F_Aspiration" placeholder="请输入客户意愿" />
41
+      </el-form-item>
42
+      <el-row>
43
+        <el-col :span="8">
44
+          <el-form-item label="商品分类" prop="parentids" >
45
+            <el-cascader
46
+              v-model="parentids"
47
+              :options="commodityTypeLists"
48
+              :props="typeDropProps"
49
+              placeholder="请选择商品分类"
50
+              clearable
51
+              filterable
52
+              change-on-select
53
+              style="width: 100%;"
54
+              @change="commodityTypeChange"/>
55
+          </el-form-item>
56
+        </el-col>
57
+        <el-col :span="8">
58
+          <el-form-item label="商品" prop="productName" >
59
+            <el-select v-model="commoditySearchData.productName" class="filter-item" value-key="F_ProductId" clearable placeholder="请选择商品" @change="commodityListChange">
60
+              <el-option
61
+                v-for="item in commodityListLists"
62
+                :key="item.F_ProductId"
63
+                :label="item.F_ProductName"
64
+                :value="item"/>
65
+            </el-select>
66
+          </el-form-item>
67
+        </el-col>
68
+        <el-col :span="8">
69
+          <el-form-item label="商品数量" prop="num" >
70
+            <el-input-number v-model="commoditySearchData.num" :min="1" label="描述文字"/>
71
+          </el-form-item>
72
+        </el-col>
73
+      </el-row>
74
+      <el-row>
75
+        <el-form-item>
76
+          <el-button type="primary" @click="addCommodity">添加商品</el-button>
77
+        </el-form-item>
78
+      </el-row>
79
+      <el-row>
80
+        <el-col :span="24">
81
+          <el-form-item label="补发商品">
82
+            <el-table :data="commodityTableData" stripe style="width: 100%">
83
+              <el-table-column prop="F_ProductName" label="商品名称" align="center" />
84
+              <el-table-column prop="F_Count" label="商品数量" align="center"/>
85
+              <el-table-column prop="F_DealPrice" label="商品单价" align="center"/>
86
+              <el-table-column prop="F_TotlePrice" label="商品总价" align="center"/>
87
+              <el-table-column label="操作" align="center">
88
+                <template slot-scope="scope">
89
+                  <el-button type="text" @click="btn_deleteCommodity(scope.row)">删除</el-button>
90
+                </template>
91
+              </el-table-column>
92
+            </el-table>
93
+          </el-form-item>
94
+        </el-col>
95
+        <el-col :span="24">
96
+          <el-form-item label="总金额">
97
+            <span>{{ totalAmount }}</span>
98
+          </el-form-item>
99
+        </el-col>
100
+      </el-row>
101
+      <el-row>
102
+        <el-col :span="24">
103
+          <el-form-item label="退回商品">
104
+            <el-table ref="oldCommodityTable" :data="oldCommodityTableData" stripe style="width: 100%" @selection-change="handleSelectionChange" >
105
+              <el-table-column type="selection" width="55"/>
106
+              <el-table-column prop="F_ProductName" label="商品名称" align="center" />
107
+              <el-table-column prop="F_Count" label="商品数量" align="center"/>
108
+            </el-table>
109
+          </el-form-item>
110
+        </el-col>
111
+      </el-row>
112
+      <el-form-item label="售后备注" prop="F_Remark">
113
+        <el-input :autosize="{ minRows: 4}" v-model="ruleForm.F_Remark" type="textarea" placeholder="请输入售后备注"/>
114
+      </el-form-item>
115
+      <el-form-item>
116
+        <el-button type="primary" @click="submitForm(0)">保存</el-button>
117
+        <!-- <el-button type="primary" @click="submitForm(1)">提交</el-button> -->
118
+      </el-form-item>
119
+    </el-form>
120
+  </div>
121
+</template>
122
+
123
+<script>
124
+import { getDictionaryValueList } from '@/api/commonAPI'
125
+import { getOrder } from '@/api/orderManagement/orderList'
126
+import { getCommodityType } from '@/api/commodityManagement/commodityType'
127
+import { getCommodityList } from '@/api/commodityManagement/commodityList'
128
+import { addAfterSaleList, getAfterSaleList, getAfterSaleOrderCommodityList } from '@/api/afterSaleManagement/afterSaleList'
129
+import { getTotalAmount } from '@/api/orderManagement/orderList'
130
+
131
+export default {
132
+  name: 'AfterSale',
133
+  props: {
134
+    rowid: {
135
+      type: String,
136
+      default: ''
137
+    },
138
+    collectionAfterSalesReasonType: {
139
+      type: String,
140
+      default: ''
141
+    },
142
+    layerid: {
143
+      type: String,
144
+      default: ''
145
+    }
146
+  },
147
+  data() {
148
+    return {
149
+      parentids: [],
150
+      afterSaleReasonsList: [], // 售后原因类型
151
+      commodityTypeLists: [], // 商品分类下拉数据
152
+      // 自定义菜单下拉数据的key值
153
+      typeDropProps: {
154
+        value: 'id',
155
+        label: 'text'
156
+      },
157
+      commodityListLists: [], // 商品列表
158
+      commodityTableData: [], // 添加商品
159
+      commoditySearchData: { // 商品搜索数据
160
+        classId: '', // 商品分类id
161
+        className: '', // 商品分类名称
162
+        productName: '', // 商品名称
163
+        productId: '', // 商品id
164
+        num: 1 // 商品数量
165
+      },
166
+      oldCommodityTableData: [], // 退回商品列表
167
+      oldDetailListSelection: [], // 退回商品选中数据
168
+      totalAmount: '', // 总金额
169
+      ruleForm: {
170
+        F_OrderId: '', // 订单编号
171
+        F_DetailList: '', // 补发产品列表
172
+        F_OldDetailList: '', // 退回产品列表
173
+        F_Type: '', // 合并类型
174
+        F_Money: '', // 减免金额
175
+        F_Remark: '', // 销售备注
176
+        F_ReturnType: '', // 售后原因类型
177
+        F_ReturnDes: '', // 售后原因
178
+        F_ProductStatus: '', // 退回商品状态
179
+        F_CheckStateSH: '', // 0保存 1提交按钮 2不通过
180
+        F_Reason: '', // 处理原因
181
+        F_Aspiration: '' // 客户意愿
182
+      },
183
+      rules: {
184
+        order1: [{
185
+          required: true,
186
+          trigger: 'blur',
187
+          message: '请输入订单编号1'
188
+        }],
189
+        order2: [{
190
+          required: true,
191
+          trigger: 'blur',
192
+          message: '请输入订单编号2'
193
+        }],
194
+        F_Type: [{
195
+          required: true,
196
+          trigger: 'change',
197
+          message: '请选择售后类型'
198
+        }],
199
+        F_Money: [{
200
+          required: true,
201
+          trigger: 'blur',
202
+          message: '请输入变动金额'
203
+        }],
204
+        F_ReturnType: [{
205
+          required: true,
206
+          trigger: 'change',
207
+          message: '请选择售后原因类型'
208
+        }]
209
+        // F_ReturnDes: [{
210
+        //   required: true,
211
+        //   trigger: 'blur',
212
+        //   message: '请输入售后原因',
213
+        // }],
214
+      },
215
+      loading: false
216
+    }
217
+  },
218
+  created() {
219
+    this.getCommodityTypeSelect()
220
+    this.getAfterSaleReasons()
221
+    Promise.all([
222
+    ]).then(() => {
223
+      if (this.rowid) {
224
+        this.ruleForm.F_OrderId = this.rowid
225
+        this.getAfterSaleOrderCommodity(this.rowid)
226
+      }
227
+      if (this.collectionAfterSalesReasonType) {
228
+        this.ruleForm.F_ReturnType = this.collectionAfterSalesReasonType
229
+      }
230
+    })
231
+  },
232
+  methods: {
233
+    submitForm(state) {
234
+      this.$refs.ruleForm.validate(valid => {
235
+        if (valid) {
236
+          this.loading = true
237
+          this.ruleForm.F_CheckStateSH = state
238
+          // 添加
239
+          addAfterSaleList(this.ruleForm).then(response => {
240
+            this.loading = false
241
+            if (response.state.toLowerCase() === 'success') {
242
+              this.$parent.$layer.close(this.layerid)
243
+              this.$parent.getList() // 重新加载父级数据
244
+              this.$message.success('恭喜你,添加成功!')
245
+            }
246
+          }).catch(() => {
247
+            this.loading = false
248
+          })
249
+          return
250
+        } else {
251
+          this.$message.error('请输入有效的必填项信息!')
252
+          return false
253
+        }
254
+      })
255
+    },
256
+    // 获取商品分类
257
+    getCommodityTypeSelect() {
258
+      this.loading = true
259
+      return new Promise(resolve => {
260
+        const data = {
261
+          pageindex: 1, // int 第几页
262
+          pagesize: 300, // int 每页几条信息
263
+          ParentId: 0
264
+        }
265
+        getCommodityType(data).then(response => {
266
+          this.loading = false
267
+          if (response.state.toLowerCase() === 'success') {
268
+            this.commodityTypeLists = response.data
269
+          }
270
+        })
271
+        resolve()
272
+      })
273
+    },
274
+
275
+    commodityTypeChange(item) {
276
+      this.commoditySearchData.classId = this.parentids[this.parentids.length - 1]
277
+      this.getCommodityListSelect()
278
+    },
279
+    commodityListChange(item) {
280
+      this.commoditySearchData.productId = item.F_ProductId
281
+      this.commoditySearchData.productName = item.F_ProductName
282
+    },
283
+    // 获取商品
284
+    getCommodityListSelect() {
285
+      this.loading = true
286
+      return new Promise(resolve => {
287
+        const params = {
288
+          pageindex: 1, // int 第几页,
289
+          pagesize: 300, // int 每页几条信息,
290
+          ProductId: '',
291
+          ClassId: this.commoditySearchData.classId === '' ? 0 : this.commoditySearchData.classId,
292
+          ClassName: '',
293
+          ProductName: '',
294
+          PinyinShort: '',
295
+          ProductNumber: '',
296
+          ProductShortName: '',
297
+          tag: '',
298
+          issale: 1
299
+        }
300
+        getCommodityList(params).then(response => {
301
+          this.loading = false
302
+          if (response.state.toLowerCase() === 'success') {
303
+            this.commodityListLists = response.data.Rows
304
+          }
305
+        })
306
+        resolve()
307
+      })
308
+    },
309
+    addCommodity() {
310
+      if (this.commoditySearchData.productName === '') {
311
+        this.$message({
312
+          message: '请选择商品!',
313
+          type: 'warning'
314
+        })
315
+        return
316
+      }
317
+      if (this.commodityTableData.length > 0) {
318
+        for (let i = 0; i < this.commodityTableData.length; i++) {
319
+          if (this.commodityTableData[i].F_ProductId === this.commoditySearchData.productId) {
320
+            this.commodityTableData[i].F_Count = this.commodityTableData[i].F_Count + this.commoditySearchData.num
321
+            this.getTotalAmountFun()
322
+            return
323
+          }
324
+        }
325
+      }
326
+      const data = {
327
+        F_ProductId: this.commoditySearchData.productId,
328
+        F_ProductName: this.commoditySearchData.productName,
329
+        F_Count: this.commoditySearchData.num,
330
+        F_DealPrice: '',
331
+        F_TotlePrice: ''
332
+      }
333
+      this.commodityTableData.push(data)
334
+      const idsQuantity = []
335
+      for (let i = 0; i < this.commodityTableData.length; i++) {
336
+        idsQuantity.push(this.commodityTableData[i].F_ProductId + ',' + this.commodityTableData[i].F_Count)
337
+      }
338
+      this.ruleForm.F_DetailList = idsQuantity.join('|') // 补发产品列表
339
+      this.getTotalAmountFun()
340
+    },
341
+    // 删除商品
342
+    btn_deleteCommodity(val) {
343
+      const index = this.commodityTableData.indexOf(val)
344
+      this.commodityTableData.splice(index, 1)
345
+      this.getTotalAmountFun()
346
+    },
347
+    // 售后订单商品列表
348
+    getAfterSaleOrderCommodity(rid) {
349
+      const params = {
350
+        orderid: rid
351
+      }
352
+      getAfterSaleOrderCommodityList(params).then(response => {
353
+        if (response.state.toLowerCase() === 'success') {
354
+          const res = response.data
355
+          this.oldCommodityTableData = res
356
+          // this.$nextTick(()=>{
357
+          //   this.oldCommodityTableData.forEach((row,index)=>{
358
+          //     this.$refs.oldCommodityTable.toggleRowSelection(row)
359
+          //   })
360
+          // },1)
361
+        }
362
+      })
363
+    },
364
+    // 售后原因类型
365
+    getAfterSaleReasons() {
366
+      return new Promise(resolve => {
367
+        const params = {
368
+          isleaf: true,
369
+          code: 'AfterSaleReasons'
370
+        }
371
+        getDictionaryValueList(params).then(response => {
372
+          if (response.state.toLowerCase() === 'success') {
373
+            this.afterSaleReasonsList = response.data.Rows
374
+          }
375
+        })
376
+      })
377
+    },
378
+    changeType(val) {
379
+      // if(val === "5") {
380
+      //   this.$refs.oldCommodityTable.clearSelection()
381
+      // } else {
382
+      //   this.oldCommodityTableData.forEach((row,index)=>{
383
+      //     this.$refs.oldCommodityTable.toggleRowSelection(row, true)
384
+      //   })
385
+      // }
386
+    },
387
+    // 选择多个
388
+    handleSelectionChange(selection) {
389
+      const idsQuantity = []
390
+      this.oldDetailListSelection = selection
391
+      for (let i = 0; i < this.oldDetailListSelection.length; i++) {
392
+        idsQuantity.push(this.oldDetailListSelection[i].F_ProductId + ',' + this.oldDetailListSelection[i].F_Count)
393
+      }
394
+      this.ruleForm.F_OldDetailList = idsQuantity.join('|')
395
+    },
396
+    // 获取金额总数
397
+    getTotalAmountFun() {
398
+      return new Promise((resolve) => {
399
+        const params = {
400
+          OrderDetailList: this.commodityTableData,
401
+          UseActList: this.ruleForm.UseActList,
402
+          F_ExpressFee:
403
+            this.ruleForm.F_ExpressFee == '' ? 0 : this.ruleForm.F_ExpressFee
404
+        }
405
+        getTotalAmount(params).then((response) => {
406
+          const res = response.orderDetails
407
+          this.totalAmount = response.totle
408
+          res.forEach((e, i) => {
409
+            this.commodityTableData.forEach((k, m) => {
410
+              if (e.F_ProductId == k.F_ProductId) {
411
+                k.F_DealPrice = e.F_DealPrice
412
+                k.F_TotlePrice = e.F_TotlePrice
413
+              }
414
+            })
415
+          })
416
+        })
417
+        resolve()
418
+      })
419
+    }
420
+  }
421
+}
422
+</script>
423
+
424
+<style rel="stylesheet/scss" lang="scss">
425
+.order_form .form_select {
426
+  width: 100%;
427
+}
428
+.form_input_number {
429
+  width: 100%;
430
+}
431
+</style>

+ 305 - 51
CallCenterWeb.UI/src/views/orderManagement/changeCollectionOrderList/index.vue

@@ -15,55 +15,232 @@
15 15
       <el-button v-permission="'HY_import_waybill_number'" type="primary" class="filter-item" @click="btn_import_waybill_number">导入运单号</el-button>
16 16
     </div>
17 17
     <el-tabs v-model="activeName" type="card" @tab-click="handleTabClick" >
18
-      <el-tab-pane label="全部" name="4"/>
19
-      <el-tab-pane label="改代收" name="0"/>
20
-      <el-tab-pane label="已签收" name="1"/>
21
-      <el-tab-pane label="已拒收" name="2"/>
22
-      <el-tab-pane label="已提交" name="3"/>
18
+      <div>
19
+        <span>订单数量:{{ pageParams.total }}</span>
20
+      </div>
21
+      <el-tab-pane label="全部" name="6">
22
+        <el-table
23
+          v-loading="loading"
24
+          :data="dataLists"
25
+          border
26
+          stripe
27
+        >
28
+          <el-table-column prop="F_Id" label="订单编号" align="center" min-width="180">
29
+            <template slot-scope="scope">
30
+              <el-button
31
+                type="text"
32
+                size="small"
33
+                @click="hadndleOrderCode(scope.row.F_Id)"
34
+              >{{ scope.row.F_Id }}</el-button>
35
+            </template>
36
+          </el-table-column>
37
+          <el-table-column prop="F_Customer" label="客户姓名" align="center" min-width />
38
+          <el-table-column prop="F_CustomerPhone" label="手机号码" align="center" min-width="140" />
39
+          <el-table-column label="订购商品" align="center" min-width>
40
+            <template slot-scope="scope">{{ scope.row.OrderDetailList | judgmentOrderGoods }}</template>
41
+          </el-table-column>
42
+          <el-table-column prop="F_AddTime" label="下单日期" align="center" />
43
+          <el-table-column label="订单状态" align="center">
44
+            <template slot-scope="scope">{{ scope.row.F_State | judgmentState }}</template>
45
+          </el-table-column>
46
+          <el-table-column label="地址" align="center">
47
+            <template slot-scope="scope">{{ scope.row | judgmentAddress }}</template>
48
+          </el-table-column>
49
+          <el-table-column prop="F_PayType" label="付款类型" align="center"/>
50
+          <el-table-column prop="F_RealPrice" label="付款金额" align="center"/>
51
+          <el-table-column prop="F_AddDes" label="送货说明" align="center"/>
52
+          <el-table-column prop="F_AddUserName" label="下单员工" align="center" />
53
+          <el-table-column prop="F_BelongName" label="归属员工" align="center" />
54
+          <el-table-column prop="F_Type" label="订单类型" align="center" />
55
+          <el-table-column prop="F_TrackingNo" label="运单号" align="center" />
56
+          <el-table-column prop="F_Waybill" label="物流操作时间" align="center" />
57
+          <el-table-column label="物流状态" align="center" >
58
+            <template slot-scope="scope">
59
+              {{ scope.row.F_Status | judgmentStatusName }}
60
+            </template>
61
+          </el-table-column>
62
+          <el-table-column label="操作" width="100" align="center" class-name="oparate_btn" fixed="right">
63
+            <template slot-scope="scope">
64
+              <el-button
65
+                v-permission="'HY_afterSale'"
66
+                type="text"
67
+                @click="btn_add_aftersale(scope.row.F_Id)"
68
+              >售后</el-button
69
+              >
70
+            </template>
71
+          </el-table-column>
72
+        </el-table>
73
+      </el-tab-pane>
74
+      <el-tab-pane label="改代收" name="0">
75
+        <el-table v-loading="loading" :data="dataLists" border stripe @selection-change="handleSelectionChange">
76
+          <el-table-column type="selection"/>
77
+          <el-table-column type="index" label="编号" align="center" fixed width="80" />
78
+          <el-table-column prop="F_OrderId" label="订单编号" align="center" min-width="180" >
79
+            <template slot-scope="scope">
80
+              <el-button type="text" size="small" @click="hadndleOrderCode(scope.row.F_OrderId)">{{ scope.row.F_OrderId }}</el-button>
81
+            </template>
82
+          </el-table-column>
83
+          <el-table-column label="售后类型" align="center">
84
+            <template slot-scope="scope">
85
+              {{ scope.row.F_Type | judgmentStateName }}
86
+            </template>
87
+          </el-table-column>
88
+          <el-table-column label="售后审核状态" align="center">
89
+            <template slot-scope="scope">
90
+              {{ scope.row.F_CheckStateSH | judgmentAfterSaleCheckState }}
91
+            </template>
92
+          </el-table-column>
93
+          <el-table-column label="仓库审核状态" align="center">
94
+            <template slot-scope="scope">
95
+              {{ scope.row.F_CheckStateKG | judgmentCustodianStateName }}
96
+            </template>
97
+          </el-table-column>
98
+          <el-table-column prop="F_Money" label="变动金额" align="center" />
99
+          <el-table-column prop="F_ReturnType" label="售后原因" align="center" />
100
+          <el-table-column prop="F_TrackingNo" label="运单号" align="center" />
101
+          <el-table-column prop="F_Remark" label="备注" align="center" />
102
+          <el-table-column prop="F_AddTime" label="下单日期" align="center" />
103
+          <el-table-column label="操作" width="240" align="center" class-name="oparate_btn" fixed="right">
104
+            <template slot-scope="scope">
105
+              <el-button v-permission="'HY_after_sale_detail'" type="text" @click="btn_after_sale_detail(scope.row.F_Id)">详情</el-button>
106
+              <el-button
107
+                v-permission="'HY_waybill_number'"
108
+                v-if="authority_waybill_number(scope.row.F_ReturnType)"
109
+                type="text"
110
+                @click="btn_waybill_number(scope.row.F_OrderId)"
111
+              >运单号</el-button>
112
+            </template>
113
+          </el-table-column>
114
+        </el-table>
115
+      </el-tab-pane>
116
+      <el-tab-pane label="已签收" name="1">
117
+        <el-table v-loading="loading" :data="dataLists" border stripe @selection-change="handleSelectionChange">
118
+          <el-table-column type="selection"/>
119
+          <el-table-column type="index" label="编号" align="center" fixed width="80" />
120
+          <el-table-column prop="F_OrderId" label="订单编号" align="center" min-width="180" >
121
+            <template slot-scope="scope">
122
+              <el-button type="text" size="small" @click="hadndleOrderCode(scope.row.F_OrderId)">{{ scope.row.F_OrderId }}</el-button>
123
+            </template>
124
+          </el-table-column>
125
+          <el-table-column label="售后类型" align="center">
126
+            <template slot-scope="scope">
127
+              {{ scope.row.F_Type | judgmentStateName }}
128
+            </template>
129
+          </el-table-column>
130
+          <el-table-column label="售后审核状态" align="center">
131
+            <template slot-scope="scope">
132
+              {{ scope.row.F_CheckStateSH | judgmentAfterSaleCheckState }}
133
+            </template>
134
+          </el-table-column>
135
+          <el-table-column label="仓库审核状态" align="center">
136
+            <template slot-scope="scope">
137
+              {{ scope.row.F_CheckStateKG | judgmentCustodianStateName }}
138
+            </template>
139
+          </el-table-column>
140
+          <el-table-column prop="F_Money" label="变动金额" align="center" />
141
+          <el-table-column prop="F_ReturnType" label="售后原因" align="center" />
142
+          <el-table-column prop="F_TrackingNo" label="运单号" align="center" />
143
+          <el-table-column prop="F_Remark" label="备注" align="center" />
144
+          <el-table-column prop="F_AddTime" label="下单日期" align="center" />
145
+          <el-table-column label="操作" width="240" align="center" class-name="oparate_btn" fixed="right">
146
+            <template slot-scope="scope">
147
+              <el-button v-permission="'HY_after_sale_detail'" type="text" @click="btn_after_sale_detail(scope.row.F_Id)">详情</el-button>
148
+              <el-button
149
+                v-permission="'HY_waybill_number'"
150
+                v-if="authority_waybill_number(scope.row.F_ReturnType)"
151
+                type="text"
152
+                @click="btn_waybill_number(scope.row.F_OrderId)"
153
+              >运单号</el-button>
154
+            </template>
155
+          </el-table-column>
156
+        </el-table>
157
+      </el-tab-pane>
158
+      <el-tab-pane label="已拒收" name="2">
159
+        <el-table v-loading="loading" :data="dataLists" border stripe @selection-change="handleSelectionChange">
160
+          <el-table-column type="selection"/>
161
+          <el-table-column type="index" label="编号" align="center" fixed width="80" />
162
+          <el-table-column prop="F_OrderId" label="订单编号" align="center" min-width="180" >
163
+            <template slot-scope="scope">
164
+              <el-button type="text" size="small" @click="hadndleOrderCode(scope.row.F_OrderId)">{{ scope.row.F_OrderId }}</el-button>
165
+            </template>
166
+          </el-table-column>
167
+          <el-table-column label="售后类型" align="center">
168
+            <template slot-scope="scope">
169
+              {{ scope.row.F_Type | judgmentStateName }}
170
+            </template>
171
+          </el-table-column>
172
+          <el-table-column label="售后审核状态" align="center">
173
+            <template slot-scope="scope">
174
+              {{ scope.row.F_CheckStateSH | judgmentAfterSaleCheckState }}
175
+            </template>
176
+          </el-table-column>
177
+          <el-table-column label="仓库审核状态" align="center">
178
+            <template slot-scope="scope">
179
+              {{ scope.row.F_CheckStateKG | judgmentCustodianStateName }}
180
+            </template>
181
+          </el-table-column>
182
+          <el-table-column prop="F_Money" label="变动金额" align="center" />
183
+          <el-table-column prop="F_ReturnType" label="售后原因" align="center" />
184
+          <el-table-column prop="F_TrackingNo" label="运单号" align="center" />
185
+          <el-table-column prop="F_Remark" label="备注" align="center" />
186
+          <el-table-column prop="F_AddTime" label="下单日期" align="center" />
187
+          <el-table-column label="操作" width="240" align="center" class-name="oparate_btn" fixed="right">
188
+            <template slot-scope="scope">
189
+              <el-button v-permission="'HY_after_sale_detail'" type="text" @click="btn_after_sale_detail(scope.row.F_Id)">详情</el-button>
190
+              <el-button
191
+                v-permission="'HY_waybill_number'"
192
+                v-if="authority_waybill_number(scope.row.F_ReturnType)"
193
+                type="text"
194
+                @click="btn_waybill_number(scope.row.F_OrderId)"
195
+              >运单号</el-button>
196
+            </template>
197
+          </el-table-column>
198
+        </el-table>
199
+      </el-tab-pane>
200
+      <el-tab-pane label="已提交" name="3">
201
+        <el-table v-loading="loading" :data="dataLists" border stripe @selection-change="handleSelectionChange">
202
+          <el-table-column type="selection"/>
203
+          <el-table-column type="index" label="编号" align="center" fixed width="80" />
204
+          <el-table-column prop="F_OrderId" label="订单编号" align="center" min-width="180" >
205
+            <template slot-scope="scope">
206
+              <el-button type="text" size="small" @click="hadndleOrderCode(scope.row.F_OrderId)">{{ scope.row.F_OrderId }}</el-button>
207
+            </template>
208
+          </el-table-column>
209
+          <el-table-column label="售后类型" align="center">
210
+            <template slot-scope="scope">
211
+              {{ scope.row.F_Type | judgmentStateName }}
212
+            </template>
213
+          </el-table-column>
214
+          <el-table-column label="售后审核状态" align="center">
215
+            <template slot-scope="scope">
216
+              {{ scope.row.F_CheckStateSH | judgmentAfterSaleCheckState }}
217
+            </template>
218
+          </el-table-column>
219
+          <el-table-column label="仓库审核状态" align="center">
220
+            <template slot-scope="scope">
221
+              {{ scope.row.F_CheckStateKG | judgmentCustodianStateName }}
222
+            </template>
223
+          </el-table-column>
224
+          <el-table-column prop="F_Money" label="变动金额" align="center" />
225
+          <el-table-column prop="F_ReturnType" label="售后原因" align="center" />
226
+          <el-table-column prop="F_TrackingNo" label="运单号" align="center" />
227
+          <el-table-column prop="F_Remark" label="备注" align="center" />
228
+          <el-table-column prop="F_AddTime" label="下单日期" align="center" />
229
+          <el-table-column label="操作" width="240" align="center" class-name="oparate_btn" fixed="right">
230
+            <template slot-scope="scope">
231
+              <el-button v-permission="'HY_after_sale_detail'" type="text" @click="btn_after_sale_detail(scope.row.F_Id)">详情</el-button>
232
+              <el-button
233
+                v-permission="'HY_waybill_number'"
234
+                v-if="authority_waybill_number(scope.row.F_ReturnType)"
235
+                type="text"
236
+                @click="btn_waybill_number(scope.row.F_OrderId)"
237
+              >运单号</el-button>
238
+            </template>
239
+          </el-table-column>
240
+        </el-table>
241
+      </el-tab-pane>
23 242
     </el-tabs>
24
-    <div>
25
-      <span>订单数量:{{ pageParams.total }}</span>
26
-    </div>
27
-    <el-table v-loading="loading" :data="dataLists" border stripe @selection-change="handleSelectionChange">
28
-      <el-table-column type="selection"/>
29
-      <el-table-column type="index" label="编号" align="center" fixed width="80" />
30
-      <el-table-column prop="F_OrderId" label="订单编号" align="center" min-width="180" >
31
-        <template slot-scope="scope">
32
-          <el-button type="text" size="small" @click="hadndleOrderCode(scope.row.F_OrderId)">{{ scope.row.F_OrderId }}</el-button>
33
-        </template>
34
-      </el-table-column>
35
-      <el-table-column label="售后类型" align="center">
36
-        <template slot-scope="scope">
37
-          {{ scope.row.F_Type | judgmentStateName }}
38
-        </template>
39
-      </el-table-column>
40
-      <el-table-column label="售后审核状态" align="center">
41
-        <template slot-scope="scope">
42
-          {{ scope.row.F_CheckStateSH | judgmentAfterSaleCheckState }}
43
-        </template>
44
-      </el-table-column>
45
-      <el-table-column label="仓库审核状态" align="center">
46
-        <template slot-scope="scope">
47
-          {{ scope.row.F_CheckStateKG | judgmentCustodianStateName }}
48
-        </template>
49
-      </el-table-column>
50
-      <el-table-column prop="F_Money" label="变动金额" align="center" />
51
-      <el-table-column prop="F_ReturnType" label="售后原因" align="center" />
52
-      <el-table-column prop="F_TrackingNo" label="运单号" align="center" />
53
-      <el-table-column prop="F_Remark" label="备注" align="center" />
54
-      <el-table-column prop="F_AddTime" label="下单日期" align="center" />
55
-      <el-table-column label="操作" width="240" align="center" class-name="oparate_btn" fixed="right">
56
-        <template slot-scope="scope">
57
-          <el-button v-permission="'HY_after_sale_detail'" type="text" @click="btn_after_sale_detail(scope.row.F_Id)">详情</el-button>
58
-          <el-button
59
-            v-permission="'HY_waybill_number'"
60
-            v-if="authority_waybill_number(scope.row.F_ReturnType)"
61
-            type="text"
62
-            @click="btn_waybill_number(scope.row.F_OrderId)"
63
-          >运单号</el-button>
64
-        </template>
65
-      </el-table-column>
66
-    </el-table>
243
+
67 244
     <!-- <pagination
68 245
       v-show="pageParams.total > 0"
69 246
       :total="pageParams.total"
@@ -80,17 +257,62 @@ import { getDictionaryValueList } from '@/api/commonAPI'
80 257
 import { getAfterSaleList, deleteAfterSaleList } from '@/api/afterSaleManagement/afterSaleList'
81 258
 import { pickerOptions, formatterContent } from '@/utils'
82 259
 import importWaybillnumber from './importWaybillnumber'
260
+import afterSale from './afterSale'
83 261
 import waybillnumber from './waybillnumber'
84 262
 import Pagination from '@/components/Pagination' // 对el-pagination 二次封装
85 263
 import detail from '@/views/orderManagement/orderList/detail'
86 264
 import afterSaleDetail from '@/views/afterSaleManagement/afterSaleList/afterSaleDetail'
87
-
265
+import { getOrderListCustomerService } from '@/api/customerServiceManagement/orderListCustomerService'
88 266
 export default {
89 267
   name: 'ConsolidateOrderList',
90 268
   components: {
91 269
     Pagination
92 270
   },
93 271
   filters: {
272
+    judgmentState(status) {
273
+      const statusMap = {
274
+        '0': '未提交',
275
+        '1': '待分仓',
276
+        '2': '已退回',
277
+        '3': '已分仓',
278
+        '4': '无货',
279
+        '5': '仓库待审核',
280
+        '6': '已发货',
281
+        '7': '付款待审核',
282
+        '8': '待分物流',
283
+        '9': '物流未通过'
284
+      }
285
+      return statusMap[status]
286
+    },
287
+    judgmentOrderGoods(status) {
288
+      if (status) {
289
+        let orderGoodsNameQuantity = ''
290
+        for (let i = 0; i < status.length; i++) {
291
+          orderGoodsNameQuantity = `${orderGoodsNameQuantity}${status[i].F_ProductName}*${status[i].F_Count},`
292
+        }
293
+        orderGoodsNameQuantity = orderGoodsNameQuantity.substring(0, orderGoodsNameQuantity.length - 1)
294
+        return orderGoodsNameQuantity
295
+      }
296
+    },
297
+    judgmentAddress(data) {
298
+      const addProvince = data.F_AddProvince === null ? '' : data.F_AddProvince // 省
299
+      const addCity = data.F_AddCity === null ? '' : data.F_AddCity // 市
300
+      const addArea = data.F_AddArea === null ? '' : data.F_AddArea // 县/区
301
+      const addTown = data.F_AddTown === null ? '' : data.F_AddTown // 乡/镇
302
+      const address = data.F_Address === null ? '' : data.F_Address // 详细地址
303
+      const addressStr = addProvince + addCity + addArea + addTown + address // 地址
304
+      return addressStr
305
+    },
306
+    judgmentStatusName(status) {
307
+      const statusMap = {
308
+        '0': '未发出',
309
+        '1': '未签收',
310
+        '2': '签收',
311
+        '3': '改代收',
312
+        '4': '拒收'
313
+      }
314
+      return statusMap[status]
315
+    },
94 316
     judgmentStateName(status) {
95 317
       const statusMap = {
96 318
         '1': '调换货',
@@ -132,7 +354,7 @@ export default {
132 354
         woState: '', // 是否提交
133 355
         returnType: '改代收' // 退回状态
134 356
       },
135
-      activeName: '4',
357
+      activeName: '6',
136 358
       pickerOptions, // 日期数据
137 359
       pageParams: {
138 360
         pageindex: 1, // 当前第几页
@@ -202,6 +424,18 @@ export default {
202 424
         title: '售后列表详情'
203 425
       })
204 426
     },
427
+    // 添加售后
428
+    btn_add_aftersale(id) {
429
+      this.$layer.iframe({
430
+        content: {
431
+          content: afterSale, // 传递的组件对象
432
+          parent: this, // 当前的vue对象
433
+          data: { rowid: id.toString() } // props
434
+        },
435
+        area: ['80%', '90%'],
436
+        title: '添加售后'
437
+      })
438
+    },
205 439
     // 运单号
206 440
     btn_waybill_number(id) {
207 441
       this.$layer.iframe({
@@ -239,12 +473,32 @@ export default {
239 473
         this.searchData.woState = '1'
240 474
         this.searchData.isSignfor = ''
241 475
         this.searchData.returnType = '改代收'
476
+        this.getList()
477
+      } else if (this.activeName == '6') {
478
+        this.getlists()
242 479
       } else {
243 480
         this.searchData.woState = ''
244 481
         this.searchData.isSignfor = this.activeName
245 482
         this.searchData.returnType = '改代收'
483
+        this.getList()
246 484
       }
247
-      this.getList()
485
+    },
486
+    getlists() {
487
+      return new Promise(resolve => {
488
+        const params = {
489
+          F_State: '6', // 订单状态
490
+          pageindex: 1, // int 第几页
491
+          pagesize: 1000000 // int 每页几条信息
492
+
493
+        }
494
+        getOrderListCustomerService(params).then(response => {
495
+          if (response.state.toLowerCase() === 'success') {
496
+            this.pageParams.total = response.data.Totals
497
+            this.dataLists = response.data.Rows
498
+          }
499
+        })
500
+        resolve()
501
+      })
248 502
     },
249 503
     btn_search() {
250 504
       this.pageParams.pageindex = 1