updateReleaseLimitApproval.vue 3.92 KB
Newer Older
1
<script>
2 3 4 5
import { getApproval, getOrderDetail } from '@/api/ecw/order'
import { getPickRleaseInfo } from '@/api/ecw/orderCargoControl'
import Template from '@/views/cms/template/index.vue'
import dayjs from 'dayjs'
6
import { parseTime } from '../../../../utils/ruoyi'
7

8 9
export default {
  name: 'updateReleaseLimitApproval',
10
  components: { Template },
11 12 13 14 15 16
  props: {
    // 审批ID
    id: Number
  },
  data(){
    return {
17 18
      detail: null,
      releaseInfo: null
19 20 21
    }
  },
  mounted() {
22 23 24 25 26 27 28 29 30 31 32 33 34
    this.getApprovalDetail()
  },
  computed:{
    showExpireTime(){
      return (days) => {
        if(!this.releaseInfo?.unloadTime || !days){
          return '-'
        }
        return dayjs(this.releaseInfo.unloadTime).add(this.detail.newLockConsigneeDay, "day").format('YYYY-MM-DD HH:mm:ss')
      }
    }
  },
  methods:{
35
    parseTime,
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
    getApprovalDetail(){
      getApproval(this.id).then(res => {
        try {
          this.detail = JSON.parse(res.data?.details)
          this.getPickRleaseInfo(this.detail.orderId)
        }catch (e) {
          console.error("审核详情解析失败", e)
          this.$message.error("审核详情数据解析失败")
        }
      })
    },
    getPickRleaseInfo(orderId){
      getPickRleaseInfo(orderId).then(res => {
        this.releaseInfo = res.data
      })
    }
52 53 54 55 56
  }
}
</script>

<template>
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
  <div v-if="detail && releaseInfo">
    <el-descriptions>
      <el-descriptions-item :label="$t('订单号')">
        {{detail.orderNo}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('总箱数')">
        {{detail.sumNum}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('总体积')">
        {{detail.sumVolume}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('总重量')">
        {{detail.sumWeight}}Kg
      </el-descriptions-item>
      <el-descriptions-item :label="$t('总控货箱数')">
        {{detail.sumNum}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('剩余放货箱数')">
        {{detail.sumNum - detail.releaseNum}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('卸柜/到仓时间')">
78
        {{ parseTime(detail.unloadTime ) }}
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
      </el-descriptions-item>
      <el-descriptions-item :label="$t('订单限制修改收货人')">
        {{releaseInfo.isLimitUpdateConsignee ? $t('') : $t('')}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('订单锁定收货人天数')" v-if="releaseInfo.isLimitUpdateConsignee">
        {{releaseInfo.lockConsigneeDay}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('放货锁定收货人到期时间')" v-if="releaseInfo.isLimitUpdateConsignee">
        {{showExpireTime(releaseInfo.lockConsigneeDay)}}
      </el-descriptions-item>
    </el-descriptions>
    <el-divider>{{$t('修改内容')}}</el-divider>
    <el-descriptions :column="3">
      <el-descriptions-item :label="$t('订单限制修改收货人')">
        {{detail.newIsLimitUpdateConsignee ? $t('') : $t('')}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('订单锁定收货人天数')" v-if="detail.newIsLimitUpdateConsignee">
        {{detail.newLockConsigneeDay}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('放货锁定收货人到期时间')" v-if="detail.newIsLimitUpdateConsignee">
        {{showExpireTime(detail.newLockConsigneeDay)}}
      </el-descriptions-item>

      <el-descriptions-item :label="$t('修改原因')" :span="3">
        {{detail.reasonZh}}
      </el-descriptions-item>
      <el-descriptions-item :label="$t('附件')" :span="3">
        <div v-if="detail.annex">
          <div v-for="url in detail.annex.split(',').filter(item => !!item)">
            <el-link :href="url" target="_blank">{{url.split("/").pop()}}</el-link>
          </div>
        </div>
      </el-descriptions-item>
    </el-descriptions>
113 114 115 116 117 118
  </div>
</template>

<style scoped lang="scss">

</style>