deliverOrderList.vue 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. <template> 
  2. <div class="app-container">
  3. <el-card class="operate-container" shadow="never">
  4. <i class="el-icon-tickets"></i>
  5. <span>发货列表</span>
  6. </el-card>
  7. <div class="table-container">
  8. <el-table ref="deliverOrderTable"
  9. style="width: 100%;"
  10. :data="list" border>
  11. <el-table-column label="订单编号" width="180" align="center">
  12. <template slot-scope="scope">{{scope.row.orderSn}}</template>
  13. </el-table-column>
  14. <el-table-column label="收货人" width="180" align="center">
  15. <template slot-scope="scope">{{scope.row.receiverName}}</template>
  16. </el-table-column>
  17. <el-table-column label="手机号码" width="160" align="center">
  18. <template slot-scope="scope">{{scope.row.receiverPhone}}</template>
  19. </el-table-column>
  20. <el-table-column label="邮政编码" width="160" align="center">
  21. <template slot-scope="scope">{{scope.row.receiverPostCode}}</template>
  22. </el-table-column>
  23. <el-table-column label="收货地址" align="center">
  24. <template slot-scope="scope">{{scope.row.address}}</template>
  25. </el-table-column>
  26. <el-table-column label="配送方式" width="160" align="center">
  27. <template slot-scope="scope">
  28. <el-select placeholder="请选择物流公司"
  29. v-model="scope.row.deliveryCompany"
  30. size="small">
  31. <el-option v-for="item in companyOptions"
  32. :key="item"
  33. :label="item"
  34. :value="item">
  35. </el-option>
  36. </el-select>
  37. </template>
  38. </el-table-column>
  39. <el-table-column label="物流单号" width="180" align="center">
  40. <template slot-scope="scope">
  41. <el-input size="small" v-model="scope.row.deliverySn"></el-input>
  42. </template>
  43. </el-table-column>
  44. </el-table>
  45. <div style="margin-top: 15px;text-align: center">
  46. <el-button @click="cancel">取消</el-button>
  47. <el-button @click="confirm" type="primary">确定</el-button>
  48. </div>
  49. </div>
  50. </div>
  51. </template>
  52. <script>
  53. import {deliveryOrder} from '@/api/order'
  54. const defaultLogisticsCompanies=["顺丰快递","圆通快递","中通快递","韵达快递"];
  55. export default {
  56. data() {
  57. return {
  58. name: 'deliverOrderList',
  59. list:[],
  60. companyOptions:defaultLogisticsCompanies
  61. }
  62. },
  63. created(){
  64. this.list= this.$route.query.list;
  65. },
  66. methods:{
  67. cancel(){
  68. this.$router.back();
  69. },
  70. confirm(){
  71. this.$confirm('是否要进行发货操作?', '提示', {
  72. confirmButtonText: '确定',
  73. cancelButtonText: '取消',
  74. type: 'warning'
  75. }).then(() => {
  76. deliveryOrder(this.list).then(response=>{
  77. this.$router.back();
  78. this.$message({
  79. type: 'success',
  80. message: '发货成功!'
  81. });
  82. });
  83. }).catch(() => {
  84. this.$message({
  85. type: 'info',
  86. message: '已取消发货'
  87. });
  88. });
  89. }
  90. }
  91. }
  92. </script>
  93. <style></style>