weightDeal.vue 9.49 KB
Newer Older
我在何方's avatar
我在何方 committed
1 2 3 4
<template>
  <div class="app-container">
    <!-- 搜索工作栏 -->
    <el-card>
我在何方's avatar
我在何方 committed
5
        <div slot="header" class="card-title">{{$t('查看')}}</div>
我在何方's avatar
我在何方 committed
6
        <el-descriptions :column="4">
我在何方's avatar
我在何方 committed
7 8
            <el-descriptions-item :label="$t('唛头')">
                {{orderData.marks?orderData.marks:$t('')}}
我在何方's avatar
我在何方 committed
9
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
10
            <el-descriptions-item :label="$t('已到箱数/总箱数')">
我在何方's avatar
我在何方 committed
11 12
                {{orderData.sumNum||0}}/{{orderData.costVO?orderData.costVO.totalNum:0}}
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
13
            <el-descriptions-item :label="$t('订单状态')">
我在何方's avatar
我在何方 committed
14 15
              <dict-tag :type="DICT_TYPE.ORDER_STATUS" :value="orderData.status" />
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
16 17
            <el-descriptions-item :label="$t('送货日期')">
              <span>{{orderData.deliveryDate||$t('')}}</span>
我在何方's avatar
我在何方 committed
18
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
19
            <el-descriptions-item :label="$t('运输方式')">
我在何方's avatar
我在何方 committed
20 21
                <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="orderData.transportId" />
              </el-descriptions-item>
我在何方's avatar
我在何方 committed
22
             <el-descriptions-item :label="$t('始发地')" :span="2">
我在何方's avatar
我在何方 committed
23
                 {{orderData.logisticsInfoDto?orderData.logisticsInfoDto.startTitleZh:$t('')}}
24
             </el-descriptions-item>
我在何方's avatar
我在何方 committed
25
             <el-descriptions-item :label="$t('目的地')">
我在何方's avatar
我在何方 committed
26
                {{orderData.logisticsInfoDto?orderData.logisticsInfoDto.destTitleZh:$t('')}}
27
             </el-descriptions-item>
我在何方's avatar
我在何方 committed
28 29
        </el-descriptions>
        <el-descriptions :column="4">
我在何方's avatar
我在何方 committed
30 31
            <el-descriptions-item :label="$t('发货人')">
                {{orderData.consignorVO?orderData.consignorVO.name||$t(''):$t('')}}
我在何方's avatar
我在何方 committed
32
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
33 34
            <el-descriptions-item :label="$t('发货公司')">
                {{orderData.consignorVO?orderData.consignorVO.company||$t(''):$t('')}}
我在何方's avatar
我在何方 committed
35
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
36
            <el-descriptions-item :label="$t('发货电话')">
我在何方's avatar
我在何方 committed
37
                {{orderData.consignorVO?((orderData.consignorVO.countryCode?checkCode(orderData.consignorVO.countryCode):'')+orderData.consignorVO.phone)||$t(''):$t('')}}
我在何方's avatar
我在何方 committed
38 39 40
            </el-descriptions-item>
          </el-descriptions>
          <el-descriptions :column="4">
我在何方's avatar
我在何方 committed
41 42
            <el-descriptions-item :label="$t('收货人')">
                {{orderData.consigneeVO?orderData.consigneeVO.name||$t(''):$t('')}}
我在何方's avatar
我在何方 committed
43
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
44 45
            <el-descriptions-item :label="$t('收货公司')">
                {{orderData.consigneeVO?orderData.consigneeVO.company||$t(''):$t('')}}
我在何方's avatar
我在何方 committed
46
            </el-descriptions-item>
我在何方's avatar
我在何方 committed
47
            <el-descriptions-item :label="$t('收货电话')">
我在何方's avatar
我在何方 committed
48
                {{orderData.consigneeVO?((orderData.consigneeVO.countryCode?checkCode(orderData.consigneeVO.countryCode):'')+orderData.consigneeVO.phone)||$t(''):$t('')}}
我在何方's avatar
我在何方 committed
49 50 51 52 53
            </el-descriptions-item>
        </el-descriptions>
    </el-card>
    <el-card class="card">
      <!-- 列表 -->
我在何方's avatar
我在何方 committed
54
      <div slot="header" class="card-title">{{$t('货物信息')}}</div>
我在何方's avatar
我在何方 committed
55
      <el-table v-loading="loading" border :data="orderData.orderItemVOList" :summary-method="getSummaries" show-summary>
我在何方's avatar
我在何方 committed
56
        <el-table-column :label="$t('序号')" align="center" prop="id" type="index">
我在何方's avatar
我在何方 committed
57 58 59 60
          <template slot-scope="scope">
              <span>{{scope.$index + 1}}</span>
          </template>
        </el-table-column>
我在何方's avatar
我在何方 committed
61
        <el-table-column :label="$t('品名')">
我在何方's avatar
我在何方 committed
62 63 64 65 66
          <template slot-scope="scope">
            <p>{{scope.row.prodTitleEn||''}}</p>
            <p>{{scope.row.prodTitleZh||''}}</p>
          </template>
          </el-table-column>
我在何方's avatar
我在何方 committed
67
          <el-table-column :label="$t('填单货物信息')">
我在何方's avatar
我在何方 committed
68
            <template slot-scope="scope">
我在何方's avatar
我在何方 committed
69 70 71 72
              <p>{{$t('品牌')}}<dict-tag :value="scope.row.brandType" :type="DICT_TYPE.ECW_IS_BRAND" /></p>
              <p>{{$t('箱数')}}{{scope.row.num||0}}</p>
              <p>{{$t('体积')}}{{scope.row.volume||0}}CBM</p>
              <p>{{$t('重量')}}{{scope.row.weight||0}}KG</p>
我在何方's avatar
我在何方 committed
73 74
            </template>
            </el-table-column>
我在何方's avatar
我在何方 committed
75
            <el-table-column :label="$t('入库货物属性')">
我在何方's avatar
我在何方 committed
76
              <template slot-scope="scope">
我在何方's avatar
我在何方 committed
77 78 79 80 81
                 <p>{{$t('箱规')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.boxGauge:0}}</p>
                 <p>{{$t('品牌')}}<dict-tag :type="DICT_TYPE.ECW_IS_BRAND" :value="scope.row.brandType" /></p>
                  <p>{{$t('箱数')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.cartonsNum:0}}&nbsp;&nbsp;</p>
                  <p>{{$t('体积')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.volume:0}}CBM&nbsp;&nbsp;</p>
                  <p>{{$t('重量')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.weight:0}}KG
我在何方's avatar
我在何方 committed
82 83 84
                </p>
              </template>
         </el-table-column>
我在何方's avatar
我在何方 committed
85
        <el-table-column :label="$t('重货方数')"  v-if="type=='order_heavy_cargo_exception'">
我在何方's avatar
我在何方 committed
86
          <template slot-scope="scope">
我在何方's avatar
我在何方 committed
87
            <span>{{scope.row.wvolume||0}}CBM</span>
88 89
          </template>
        </el-table-column>
90
        <el-table-column :label="$t('泡货方数')" v-if="type!='order_heavy_cargo_exception'">
91
          <template slot-scope="scope">
92 93 94 95 96 97 98 99 100 101 102
            <span>{{scope.row.wvolume||0}}CBM</span>
          </template>
        </el-table-column>
        <el-table-column :label="$t('重货重量')"  v-if="type=='order_heavy_cargo_exception'">
          <template slot-scope="scope">
            <span>{{scope.row.vweight||0}}KG</span>
          </template>
        </el-table-column>
        <el-table-column :label="$t('泡货重量')" v-if="type!='order_heavy_cargo_exception'" >
          <template slot-scope="scope">
            <span>{{scope.row.vweight||0}}KG</span>
我在何方's avatar
我在何方 committed
103 104
          </template>
        </el-table-column>
我在何方's avatar
我在何方 committed
105
        <el-table-column :label="$t('最后操作时间')" scope="handlerTime" />
我在何方's avatar
我在何方 committed
106 107 108 109 110 111

      </el-table>

    </el-card>
      <div slot="footer" class="dialog-footer">
        <div>
我在何方's avatar
我在何方 committed
112 113
          <el-button  type="primary" @click="submit('general_cargo')">{{$t('设为普货')}}</el-button>
          <el-button plain type="primary" @click="submit('process')">{{$t('设为已处理')}}</el-button>
我在何方's avatar
我在何方 committed
114 115
        </div>
      </div>
我在何方's avatar
我在何方 committed
116
      <el-form  :model="handlerParams" ref="queryForms" size="small" label-width="50px" class="card">
我在何方's avatar
我在何方 committed
117 118 119 120 121
        <el-form-item :label="$t('备注')+':'" size="medium">
          <el-input style="width: 500px;"  type="textarea" v-model="handlerParams.orderExceptionHandlerRemark"  />
        </el-form-item>
      </el-form>

我在何方's avatar
我在何方 committed
122 123 124 125 126 127 128
  </div>
</template>

<script>
import {getExceptionById,handlerExceptionByExceptionId} from "@/api/ecw/orderException"
import {DICT_TYPE} from  '@/utils/dict'
import {getOrder} from '@/api/ecw/order'
我在何方's avatar
我在何方 committed
129
import {getProductBrankPage} from '@/api/ecw/productBrank'
我在何方's avatar
我在何方 committed
130 131 132 133 134 135 136 137 138 139 140 141 142

export default {
  name: "WeightDeal",
  components: {

  },
  data() {
    return {
      // 遮罩层
      loading: false,
      orderData:{},
      list: {},
      orderId:0,
我在何方's avatar
我在何方 committed
143
      type:'',
我在何方's avatar
我在何方 committed
144 145 146 147
      branklist:[],
      handlerParams:{
        orderExceptionHandlerRemark:''
      }
我在何方's avatar
我在何方 committed
148 149 150 151 152 153
    };
  },
  created() {
    if(this.$route.query.id){
      this.id = this.$route.query.id
      this.getList()
154 155 156
    }
    if(this.$route.query.type){
      this.type = this.$route.query.type
我在何方's avatar
我在何方 committed
157
    }
我在何方's avatar
我在何方 committed
158 159 160
    getProductBrankPage({pageNo:1,pageSize:500}).then((data)=>{
      this.branklist=data.data.list
    })
我在何方's avatar
我在何方 committed
161 162 163 164 165 166 167 168 169 170 171 172
  },
  methods: {
    /** 查询列表 */
    getList() {
      this.loading = true;
      // 执行查询
      getExceptionById(this.id).then(response => {
        this.list = response.data;
        this.loading = false;
        this.getOrders()
      });
    },
我在何方's avatar
我在何方 committed
173 174 175 176
    getBrand(id){
      var brank = this.branklist.find(item=>item.id==id)
      return brank.titleZh||''
    },
我在何方's avatar
我在何方 committed
177 178 179 180 181 182
    checkCode(data){
      if(data.indexOf('+')==-1){
      	return '+'+data
      }
      return data
    },
我在何方's avatar
我在何方 committed
183 184 185 186 187 188 189 190 191 192
    getOrders(){
      getOrder(this.list.orderId).then(response => {
        this.orderData = response.data
      });
    },
    getSummaries(){
      const sums = [];
      if(!this.orderData || !this.orderData.list ||ths.orderData.length==0){
        return sums
      }
我在何方's avatar
我在何方 committed
193
      sums[0] = this.$t('小计')
我在何方's avatar
我在何方 committed
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208
      var orderSum = 0
      var orderV = 0
      var orderW = 0
      var leviteSum = 0
      var leviteV = 0
      var leviteW = 0
      this.orderData.list.forEach((column, index) => {
          orderSum += column.orderSum
          orderV += column.volume
          orderW += column.weight
          leviteSum += column.orderSum
          leviteV += column.volume
          leviteW += column.weight
      });
      sums[1] = ''
我在何方's avatar
我在何方 committed
209 210
      sums[2] = this.$t('下单统计:')+ orderSum+this.$t('')+ orderV +'' + orderW + ' kg'
      sums[3] = this.$t('入仓统计:')+ leviteSum+this.$t('')+ leviteV +'' + leviteW + ' kg'
我在何方's avatar
我在何方 committed
211 212 213 214 215
      sums[4] = ''
      sums[5] = ''
      return sums;
    },
    submit(result){
我在何方's avatar
我在何方 committed
216
      handlerExceptionByExceptionId({orderExceptionId:this.list.id,orderExceptionHandlerResult:result,orderExceptionHandlerRemark:this.handlerParams.orderExceptionHandlerRemark}).then(res=>{
我在何方's avatar
我在何方 committed
217
          this.$modal.msgSuccess(this.$t("提交成功"));
我在何方's avatar
我在何方 committed
218 219 220 221 222 223 224
          this.$router.back()
      })
    }
  }
}
</script>
<style scoped>
我在何方's avatar
我在何方 committed
225 226 227
  .dialog-footer{
      margin-top: 10px;
  }
我在何方's avatar
我在何方 committed
228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245
  .filelist{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .filelist span{
    width: 48%;
    margin-right: 2%;
    color: #1E98D7;
  }
  .card-title{
      font-size: 18px;
      font-weight: bold;
      margin-top: 10px;
  }
  .card{
    margin-top: 20px;
  }
我在何方's avatar
我在何方 committed
246 247 248 249
  p{
    text-align: left;
     margin: 0 !important;
  }
我在何方's avatar
我在何方 committed
250
</style>