index.vue 9.79 KB
<template>
  <div class="entry" v-loading="loadings.entryLoading">
    <div class="entryTitle">
      <div>出口订单详情</div>
      <div>
        <el-button class="entrySaveButton" @click="back">返 回</el-button>
      </div>
    </div>
    <el-form
      class="fedexFormStyle"
      ref="sreachForm"
      :model="formData"
      label-position="top"
      disabled
      size="small"
    >
      <el-row :gutter="5">
        <el-col :span="3">
          <Formitem label="订单编号" prop="orderNo">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--orderNo"
              resize="none"
              v-model="formData.orderNo"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="3">
          <Formitem label="订单类型" prop="orderType">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--orderType"
              resize="none"
              v-model="formData.orderType"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="3">
          <Formitem label="电商平台代码" prop="ebpcode">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--ebpcode"
              resize="none"
              v-model="formData.ebpcode"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="6">
          <Formitem label="电商平台名称" prop="ebpname">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--ebpname"
              resize="none"
              v-model="formData.ebpname"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="3">
          <Formitem label="电商企业代码" prop="ebccode">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--ebccode"
              resize="none"
              v-model="formData.ebccode"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="3">
          <Formitem label="电商企业" prop="ebcname">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--ebcname"
              resize="none"
              v-model="formData.ebcname"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="3">
          <Formitem label="货款金额" prop="goodsValue">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--goodsValue"
              resize="none"
              v-model="formData.goodsValue"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
      </el-row>
      <el-row :gutter="5">
        <el-col :span="3">
          <Formitem label="运杂费" prop="freight">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--freight"
              resize="none"
              v-model="formData.freight"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="3">
          <Formitem label="币制" prop="currency">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--currency"
              resize="none"
              v-model="formData.currency"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <!-- <el-col :span="3">
          <Formitem label="业务状态" prop="returnStatus">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--returnStatus"
              resize="none"
              v-model="formData.returnStatus"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col> -->
        <el-col :span="3">
          <Formitem label="申报类型" prop="appType">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--appType"
              resize="none"
              v-model="formData.appType"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="3">
          <Formitem label="申报日期" prop="appTime">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--appTime"
              resize="none"
              v-model="formData.appTime"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
        <el-col :span="12">
          <Formitem label="备注" prop="note">
            <el-input
              type="text"
              class="inputShadow"
              id="inputInner--note"
              resize="none"
              v-model="formData.note"
              clearable
              placeholder=""
            ></el-input>
          </Formitem>
        </el-col>
      </el-row>
    </el-form>
    <div
      :class="{ entryTitle: true, titleBorder: logtableType ? false : true }"
      style="margin-top: 10px"
    >
      <div>
        回执信息
        <el-button type="text" @click="hiddenLogTable">
          <svg-icon v-if="logtableType" icon-class="downIcon"></svg-icon>
          <svg-icon v-else icon-class="upIcon"></svg-icon>
        </el-button>
      </div>
    </div>
    <ReceiptInfoTable
      v-if="logtableType"
      :tableData="logData"
      :headerData="logHeaderData"
    />
    <div class="entryTitle" style="margin-top: 10px">商品明细</div>
    <ProductDetailTable
      :tableData="detailData"
      :bodyHeader="detialHeaderData"
    />
    <div style="margin-bottom: 20px; text-align: center"></div>
  </div>
</template>

<script>
import ReceiptInfoTable from "../components/ReceiptInfoTable/index.vue";
import ProductDetailTable from "../components/ProductDetailTable/index.vue";
import { getOrderDetailData } from "@/api/exportDetail-api.js";
export default {
  name: "index.vue",
  components: { ProductDetailTable, ReceiptInfoTable },
  data() {
    return {
      id: null,
      formData: {},
      logData: [],
      logHeaderData: [
        {
          name: "回执状态",
          value: "returnStatus",
          width: "200",
          align: "left",
        },
        {
          name: "状态时间",
          value: "returnTime",
          width: "400",
          align: "left",
        },
        {
          name: "回执描述",
          value: "returnInfo",
          width: "",
          align: "left",
        },
      ],
      detailData: [],
      detialHeaderData: [
        {
          name: "企业商品货号",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "商品企业商品名称",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "企业商品描述",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "条码",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "计量单位",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "币制",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "数量",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "单价",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "总价",
          value: "",
          width: "",
          align: "left",
        },
        {
          name: "备注",
          value: "",
          width: "",
          align: "left",
        },
      ],
      loadings: {
        entryLoading: false,
      },
      logtableType: true,
    };
  },
  created() {
    if (this.$route.params.data) {
      this.id = this.$route.params.data.id;
      this.searchData();
    } else {
      this.back();
    }
  },
  methods: {
    searchData() {
      this.loadings.entryLoading = true;
      getOrderDetailData({ orderId: this.id })
        .then((res) => {
          if (res.code === "200") {
            this.formData = res.data.exportOrder;
            this.detailData = res.data.exportOrderProductList;
            this.logData = res.data.exportOrderReceiptList;
            this.detailData.forEach((item, idx) => {
              item.index = idx;
            });
          } else {
            this.alertWarningMsg(res.message);
          }
          this.loadings.entryLoading = false;
        })
        .catch((err) => {
          console.log(err);
          this.loadings.entryLoading = false;
        });
    },
    searchLogData() {},
    hiddenLogTable() {
      this.logtableType = !this.logtableType;
    },
    back() {
      this.$router.go(-1);
    },
  },
};
</script>

<style scoped lang="scss">
.entry {
  width: 100%;
  height: 100%;
  padding: 10px;
  background-color: #fff;
  overflow: auto;

  .entryInformation {
    width: 100%;
    height: 100%;
  }

  .entryTitle {
    display: flex;
    justify-content: space-between;
    font-weight: 600;
    font-weight: 16px;
    color: #000;
    margin-bottom: 10px;
  }

  .titleBorder {
    border-bottom: 1px solid #333;
  }
}
</style>