<template>
  <div class="app-container">
    <el-card>
     <div slot="header" class="header">
       <div class="card-title">查看</div>
       <el-button type="primary" icon="el-icon-arrow-left" @click="$router.back()">返回</el-button>
     </div>
     <el-form :model="orderData" ref="queryForm" size="small" :inline="true"  label-width="120px" class="card">
       <el-row>
          <el-form-item label="订单号:">
            {{orderData?orderData.orderNo:''}}
          </el-form-item>
       </el-row>
       <div v-if="orderExceptionData.orderExceptionType==1||orderExceptionData.orderExceptionType==2">
         <el-row>
            <el-form-item label="产品名称:" >
              {{shopData?shopData.prodTitleZh:''}}
            </el-form-item>
         </el-row>
         <el-row>
            <el-form-item label="产品名称英文名称:">
              {{shopData?shopData.prodTitleEn:''}}
            </el-form-item>
         </el-row>
       </div>
       <el-row>
           <el-form-item label="运输路线:" >
               <span v-if="orderData">【<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="orderData.transportId" />】</span>
                {{orderData?getRouterNameById():''}}
           </el-form-item>
       </el-row>
       <div v-if="orderExceptionData.orderExceptionType!=3||orderExceptionData.orderExceptionType!=9||orderExceptionData.orderExceptionType!=10||orderExceptionData.orderExceptionType!=11">
         <el-row>
            <el-form-item label="填单参数:">
               {{(orderData.costVO?orderData.costVO.totalNum:0)+'箱 '+(orderData.costVO?orderData.costVO.totalVolume:0)+'m³ '+(orderData.costVO?orderData.costVO.totalWeight:0)+'kg'}}
            </el-form-item>
         </el-row>
         <el-row>
            <el-form-item label="入仓参数:">
              {{(orderData.sumNum||0)+'箱 '+(orderData.sumVolume||0)+'m³ '+(orderData.sumWeight||0)+'kg'}}
            </el-form-item>
         </el-row>
         <el-row :span="12">
            <el-form-item label="异常描述:">
               {{orderData.totalMoney||'无'}}
            </el-form-item>
            <el-button v-if="orderExceptionData.orderExceptionType==3" type="primary" plain icon="el-icon-plus" style="margin-left: 200px;"  @click="handleAdd">新增收款单</el-button>
         </el-row>
<!--         <el-row :span="12">
            <el-form-item label="详细内容:">
               {{orderData.totalMoney||'无'}}
            </el-form-item>
            <el-button v-if="orderExceptionData.orderExceptionStatus==3" type="primary" plain icon="el-icon-plus" style="margin-left: 200px;"  @click="handleAdd">新增收款单</el-button>
         </el-row> -->
       </div>
     </el-form>
      <el-table v-if="orderExceptionData.orderExceptionType==3" v-loading="loading" border :data="orderData.orderItemVOList" @selection-change="handleSelectionChange">
<!--            <el-table-column type="selection" width="55">
                   </el-table-column> -->
            <el-table-column label="品名" align="center">
              <template slot-scope="scope">
                {{scope.row.prodTitleZh+'('+scope.row.prodTitleEn+')'}}
              </template>
            </el-table-column>
            <el-table-column label="箱数" prop="num" />
            <el-table-column label="体积/重量">
              <template slot-scope="scope">
                  {{scope.row.volume+'/'+scope.row.weight}}
                </template>
              </el-table-column>
              <el-table-column label="收款类型">
                 <template >
                    '预付'
                 </template>
              </el-table-column>
            <el-table-column label="收入类型">
               <template slot-scope="scope">
                  <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="scope.row.feeType"></dict-tag>
               </template>
            </el-table-column>
            <el-table-column label="应收金额" prop="num" />
            <el-table-column label="总金额美元" align="center" prop="totalAmount" />
            <el-table-column label="总金额RMB" align="center" prop="totalAmount" />
            <el-table-column label="实收金额" prop="volume" />
            <el-table-column label="付款人">
              <template slot-scope="scope">
               <span>{{srope.row.consigneeVO.name}}(收货人)</span>
              </template>
            </el-table-column>
            <el-table-column label="付款状态" prop="worth">
              <template slot-scope="scope">
                  <dict-tag :type="DICT_TYPE.ECW_RECEIPT_STATE" :value="scope.row.state"></dict-tag>
                </template>
              </el-table-column>
          </el-table>
          <el-table v-if="orderExceptionData.orderExceptionType==9||orderExceptionData.orderExceptionType==10||orderExceptionData.orderExceptionType==11" v-loading="loading" border :data="orderData.orderItemVOList">
                <el-table-column label="中文名" align="center"  prop="prodTitleZh" />
                <el-table-column label="英文名" align="center"  prop="prodTitleEn" />
                <el-table-column label="品牌" align="center" prop="brand" />
                <el-table-column label="填单箱数" prop="num" />
                <el-table-column label="入仓箱数">
                  <template slot-scope="scope">
                      {{scope.row.warehouseInInfoVO.cartonsNum}}
                    </template>
                  </el-table-column>
                  <el-table-column label="方数" prop="volume" />
                <el-table-column label="重量" prop="weight" />
                <el-table-column label="数量" prop="quantity" />
                <el-table-column label="货值" prop="worth" />
              </el-table>
          <el-form :model="handlerParams" ref="queryForms" size="small" :inline="true"  label-width="120px" class="card">
            <el-row v-if="orderExceptionData.orderExceptionType==3">
               <el-form-item label="应付金额:">
                  {{orderData.totalMoney}}
               </el-form-item>
            </el-row>
            <el-row v-if="orderExceptionData.orderExceptionType==3">
               <el-form-item label="核销金额:">
                  {{orderData.totalMoney}}
               </el-form-item>
            </el-row>
            <el-row v-if="orderExceptionData.orderExceptionType==3">
               <el-form-item label="核销比例:">
                  {{orderData.totalMoney}}
               </el-form-item>
            </el-row>
            <el-row>
                <el-form-item label="处理结果:" >
                  <el-select v-model="handlerParams.orderExceptionHandlerResult">
                  <el-option  v-for="dict in getDictDatas(orderExceptionData.orderExceptionType+'_result')"
                             :key="dict.value" :label="dict.label" :value="dict.value"/>
                  </el-select>
                </el-form-item>
            </el-row>
            <el-row :span="8">
               <el-form-item label="备注:" size="medium">
                 <el-input style="width: 500px;"  type="textarea" v-model="handlerParams.orderExceptionHandlerRemark"  />
               </el-form-item>
            </el-row>
            <el-row :span="8" v-if="orderExceptionData.orderExceptionType==9">
               <el-form-item label="报关资料:" size="medium">
                 <file-upload v-model="handlerParams.fileList" :value="orderExceptionData.file" ></file-upload>
               </el-form-item>
            </el-row>
            <div v-if="orderExceptionData.orderExceptionType==4||orderExceptionData.orderExceptionType==5||orderExceptionData.orderExceptionType==6||orderExceptionData.orderExceptionType==7">
              <el-row >
                 <el-form-item label="详细内容:">
                    {{orderExceptionData.content}}
                 </el-form-item>
              </el-row>
              <el-row >
                 <el-form-item label="状态:">
                    <dict-selector :type="DICT_TYPE.ORDER_ERROR_TYPE" v-model="handlerParams.orderExceptionStatus" />
                 </el-form-item>
              </el-row>
              <el-row >
                 <el-form-item label="*查明原因:">
                    {{orderExceptionData.content}}
                 </el-form-item>
              </el-row>
            </div>
          </el-form>
          </el-card>
          <div slot="footer" class="dialog-footer">
            <div>
              <el-button  type="primary" @click="submitForm">提交</el-button>
              <el-button plain type="primary" @click="$router.back()">取消</el-button>
            </div>
            <el-button v-if="orderExceptionData.orderExceptionStatus==3"  type="primary" @click="submitForm">转交</el-button>
          </div>
  </div>
</template>

<script>
  import FileUpload from '@/components/FileUpload'
  import {getDictData, getDictDatas} from  '@/utils/dict'
  import {getOrder} from '@/api/ecw/order'
  import {getExceptionById,handlerExceptionByExceptionId,getOrderItemById} from "@/api/ecw/orderException"

  export default {
    name: "PrepayDeal",
    components: {
      FileUpload
    },
    data() {
      return {
        // 遮罩层
        loading: false,
        orderExceptionData: {},
        types:'package,bag',
        importance:1,
        orderData:{
        },
        orderId:0,
        orderExceptionId:0,
        handlerParams:{
          orderExceptionId:0
        },
        shopData:{},
        //发货/收货人信息
        consigneeData:[],
        routerList:[],
        multipleSelection:[],
      };
    },
    created() {
      if(this.$route.query.id){
        this.orderExceptionId = this.$route.query.id
        this.handlerParams.orderExceptionId = this.$route.query.id
        this.getList()
      }
    },
    methods: {
      /** 查询列表 */
      getList() {
        let that = this
        that.loading = true;
        getExceptionById(that.orderExceptionId).then(response => {
          that.orderExceptionData = response.data;
          that.handlerParams.orderExceptionStatus = response.data.orderExceptionStatus
          that.loading = false;
          that.orderId = response.data.orderId
          that.getOrderData()
          if(response.data.hasOwnProperty('orderItemId')){
            that.getShopData(response.data.orderItemId)
          }
        });
      },
      getOrderData(){
        getOrder(this.orderId).then(response => {
          this.orderData = response.data
        });
      },
      getShopData(id){
        getOrderItemById(id).then(res=>{
          this.shopData = res.data
        })
      },
      handleSelectionChange(val) {
         this.multipleSelection = val;
       },
      // 根据线路id显示线路名称
      getRouterNameById(){
              if(this.orderData.logisticsInfoDto) {
                  return ' 从【'+this.orderData.logisticsInfoDto.startTitleZh + '】发往【' + this.orderData.logisticsInfoDto.destTitleZh+'】'
              }
              return '无'
      },
      submitForm(){
        console.log(this.handlerParams)
          handlerExceptionByExceptionId(this.handlerParams).then(res=>{
              this.$modal.msgSuccess("提交成功");
              this.$router.back()
          })
      },
      /** 跟进按钮操作 */
      handleAdd() {
        this.$router.push({
          path: "/financial/creatCollection",
          query:{
            orderId:this.orderId,
          }
        });
      },

    }
  };
</script>

<style>
  .card-title{
      font-size: 18px;
      font-weight: bold;
       margin-top: 10px;
  }
  .header{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .card{
    margin-top: 20px;
  }
  .dialog-footer{
    padding: 40px;
    width: 60%;
    align-items: center;
    display: flex;
    justify-content: space-between;
  }
</style>
