order-logistics.js 902 Bytes
/* eslint-disable operator-linebreak */
export default function() {
  return {
    namespaced: true,
    state: {
      logisticInfo: {},
    },
    mutations: {
      initData: (state, data) => {
        state.logisticInfo = data;
      },
    },
    getters: {
      stageImgUrl: ({ logisticInfo: { stage } }) => {
        return stage
          ? require(`../../statics/image/order/logistics_progress_${stage}@3x.png`)
          : '';
      },
    },
    actions: {
      /**
       * 获取物流信息
       * @param {*} param0
       * @param {*}
       * @returns ts ILogisticsInfo
       */
      async fetchLogisticInfo({ commit }, { owner, code } = {}) {
        const res = await this.$api.get('/api/order/express', {
          tabType: owner,
          orderCode: +code,
        });

        if (res.code === 200) {
          commit('initData', res.data);
        }
      },
    },
  };
}