<!--
 * @Author: your name
 * @Date: 2021-12-03 15:31:52
 * @LastEditTime : 2022-04-06 15:37:30
 * @LastEditors  : Shiming
 * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 * @FilePath     : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\vehicle-detail\\vehicle-detail.component.html
-->
<page-header-wrapper [title]="'整车运单详情'" [logo]="logo" [content]="headerContent" [ngClass]="{'affix': scrollTop>210}">
  <ng-template #logo>
    <button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
      <i nz-icon nzType="left" nzTheme="outline"></i>
    </button>
  </ng-template>
  <ng-template #headerContent>
    <div nz-row>
      <button nz-button nzType="primary" nzSize="small" nzDanger>{{i?.wayBillStatusLabel}}</button>
      <h4 class="ml-md" style="font-size: 18px;">运单号: {{ i?.wayBillCode }}</h4>
    </div>
    <div nz-row style="display: flex; justify-content: end; " class="mb-xs">
      <div nz-col>
        <button nz-button (click)="sureDepart(i)" *ngIf="i?.wayBillStatus == '2'" acl
          [acl-ability]="['WAYBILL-VEHICLE-DETAIL-wholeStartCarInfo']">确认发车</button>
        <button nz-button nzType="primary" (click)="sureArrive(i)" *ngIf="i?.wayBillStatus == '3'" nzGhost acl
          [acl-ability]="['WAYBILL-VEHICLE-DETAIL-wholeUnloadCarInfo']">确认到车</button>
      </div>
    </div>
    <div>
      <div sv-container>
        <sv label="网络货运人">{{ i?.enterpriseInfoName }} </sv>
        <sv label="货主">{{ i?.shippername }} </sv>
        <sv label="所属项目">{{i?.enterpriseProjectName}}</sv>
        <sv label="服务类型">{{i?.serviceTypeLabel}}</sv>
        <sv label="调度员">{{i?.dispatchName}}{{ i?.dispatchPhone ? '/' + i?.dispatchPhone : '' }}</sv>
        <sv label="货源编号">{{ i?.resourceCode }} </sv>
        <sv label="承诺付款天数">{{ i?.paymentDays }}</sv>
      </div>
      <nz-tabset style="margin-top: 15px;">
        <nz-tab nzTitle="装卸货信息" (nzClick)="goDistance(distannce1)">
        </nz-tab>
        <nz-tab nzTitle="基本信息" (nzClick)="goDistance(distannce1)">
        </nz-tab>
        <nz-tab nzTitle="运费信息" (nzClick)="goDistance(distannce3)">
        </nz-tab>
        <nz-tab nzTitle="附件信息" (nzClick)="goDistance(distannce4)">
        </nz-tab>
        <nz-tab nzTitle="轨迹信息" (nzClick)="goDistance(distannce5)">
        </nz-tab>
      </nz-tabset>
    </div>
  </ng-template>
</page-header-wrapper>
<nz-card nzTitle="运单进度">
  <div class="approval-status">
    <div style="width: 60%; margin: 0 auto">
        <nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical">
          <nz-step           *ngFor="let item of i?.scheduleVOList"     [nzTitle]="item.state"    
          [nzSubtitle]="item.stateTime"     [nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"  >
            </nz-step>
         </nz-steps>
    </div>
  </div>
</nz-card>

<nz-card nzTitle="基本信息" #distannce1>
  <sv-container col="1">
    <sv label="货物名称">
      {{i?.goodsInfos?.[0]?.goodsName}}
    </sv>
  </sv-container>
  <sv-container col="2">
    <sv label="货物数量">
      {{i?.goodsInfos?.[0]?.weight}}吨,{{i?.goodsInfos?.[0]?.volume}}方,{{i?.goodsInfos?.[0]?.number}}件
    </sv>
    <sv label="用车需求">
      {{i?.goodsInfos?.[0]?.carModelLabel}}{{ i?.goodsInfos?.[0]?.carLength ? '/' + i?.goodsInfos?.[0]?.carLength + '米':
      ''}}
    </sv>
    <sv label="承运司机">
      {{i?.driverVo?.name}}{{ i?.driverVo?.phone ? '/' + i?.driverVo?.phone : ''}}
    </sv>
    <sv label="车型车长载重">
      {{ i?.carVO?.carModelLabel ? i?.carVO?.carModelLabel +',': ''}}{{ i?.carVO?.carLengthLabel ?
      i?.carVO?.carLengthLabel +'米,': ''}}{{i?.carVO?.carLoad ? i?.carVO?.carLoad +'吨': ''}}
    </sv>
    <sv label="计划装货时间">
      {{i?.loadingTime}}
    </sv>
    <sv label="计划卸货时间">
      {{i?.unloadingTime}}
    </sv>
  </sv-container>
  <div class="mt-md">
    <h4 class="text-md">装货卸货信息
      <span class="ml-sm text-sm">(
        <label>{{i?.loadingNumber|| '一'}}装</label>
        <label>{{i?.dischargeNumber || '一'}}卸</label>
        )
      </span>
    </h4>
    <div nz-row [nzGutter]="24">
      <div nz-col [nzSpan]="12">
        <div class="handling-info p-md">
          <div class="flex" *ngFor="let item of i?.loadingPlace">
            <div *ngIf="item.type === '1'" class="loading-row">
              <div class="handling-info-icon loading-bg">装</div>
              <div class="info">
                <h4>装货地：{{item?.province}}{{item.city}}{{item.area}}{{item.detailedAddress}}</h4>
                <p>联系人：{{item.appUserName}}/{{item.contractTelephone}}</p>
              </div>
            </div>
          </div>
        </div>
      </div>
      <div nz-col [nzSpan]="12">
        <div class="handling-info p-md">
          <div class="flex" *ngFor="let item of i?.dischargePlace">
            <div *ngIf="item.type === '2'" class="loading-row">
              <div class="handling-info-icon unloaing-bg">卸</div>
              <div class="info">
                <h4>卸货地：{{item?.province}}{{item.city}}{{item.area}}{{item.detailedAddress}}</h4>
                <p>联系人：{{item.appUserName}}/{{item.contractTelephone}}</p>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</nz-card>
<nz-card nzTitle="服务信息">
  <sv-container>
    <sv label="服务包">
      {{i?.insuranceTypeLabel}}
    </sv>
    <sv label="货物价值">
      {{i?.goodsValue !==null?(i?.goodsValue|currency)+'元':'-'}}
    </sv>
    <sv label="服务包费用">
      {{i?.insurancePremium!==null?(i?.insurancePremium |currency)+'元':'-'}}
    </sv>
  </sv-container>
</nz-card>
<nz-card [nzTitle]="'运费信息' +'（到货后'+i?.paymentDays+'天内支付运费）'" #distannce3>
  <st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
    <ng-template st-row="price" let-item let-index="index">
      {{ item.price | currency }}
    </ng-template>
    <ng-template st-row="prices" let-item let-index="index">
      {{ item.price + item.surcharge | currency }}
    </ng-template>
    <ng-template st-row="surcharge" let-item let-index="index">
      {{ item.surcharge | currency }}
    </ng-template>
  </st>
  <div>
    总计：<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> （运费{{ i?.totalFreight |
    currency }}，
    附加费{{ i?.totalSurcharge | currency }}，附加费率{{ (i?.totalRate * 100).toFixed(2)}}% ）
  </div>
  <div *ngIf="i?.payee?.phone && i?.payee?.phone !== i?.driverVo.phone">车队长：{{ i?.payee?.name }}/{{ i?.payee?.phone
    }}/{{ i?.payee?.idNo }}</div>
</nz-card>

<nz-card nzTitle="附件信息" #distannce4>
  <sv-container>
    <sv label="协议附件">
      <a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a> &nbsp;&nbsp;&nbsp;&nbsp;
      <a *ngIf="i?.supplementContent?.contractContent" (click)="agreement('2')">补充协议</a>
    </sv>
  </sv-container>
  <sv-container col="2" class="mt-md">
    <sv label="装货凭证">
      <app-imagelist *ngIf="i?.loadingCertificate" [imgList]="i?.loadingCertificate">
      </app-imagelist>
    </sv>
    <sv label="卸货凭证">
      <app-imagelist *ngIf="i?.unLoadingCertificate" [imgList]="i?.unLoadingCertificate">
      </app-imagelist>
    </sv>
  </sv-container>
</nz-card>
<nz-card nzTitle="补充信息">
  <sv-container>
    <sv label="是否回单">
      {{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }}
    </sv>
    <sv label="回单类型" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
      {{ i?.supplementaryInformationVO?.receiptType === '1' ? '电子回单' : '纸质回单' }}
    </sv>
    <sv label="联系人" *ngIf="i?.supplementaryInformationVO?.stateReceipt"> {{
      i?.supplementaryInformationVO?.receiptUserName }} / {{ i?.supplementaryInformationVO?.phon }} </sv>
    <sv label="所在地区" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
      {{ i?.supplementaryInformationVO?.area }}
    </sv>
    <sv label="详细地址" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
      {{ i?.supplementaryInformationVO?.address }}
    </sv>
  </sv-container>
  <sv-container col="1" class="mt-md">
    <sv label="回单凭证" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
      <app-imagelist [imgList]="i?.receiptFilePath"></app-imagelist>
    </sv>
    <sv label="备注">
      {{ i?.supplementaryInformationVO?.remarks }}
    </sv>
  </sv-container>
</nz-card>

<nz-card>
  <p class="detail_title" #distannce5><span>|</span> 轨迹信息</p>
  <div nz-row>
    <div nz-col [nzSpan]="24">
      <amap-path-simplifier [mapWidth]="'100%'" [mapHeight]="'600px'" [mapList]="mapList">
      </amap-path-simplifier>
      <st [scroll]="{ y: '350px' }" #st [data]="addressItems" [columns]="logColumns2" [ps]="0"
        [page]="{ show: false, showSize: false }" size="small" class="map_st">
      </st>
      <nz-radio-group [(ngModel)]="trajectory" (ngModelChange)="trajectoryChange($event)" class="map_radio">
        <label nz-radio-button nzValue="car">车辆轨迹</label>
        <label nz-radio-button nzValue="driver">司机轨迹</label>
      </nz-radio-group>
    </div>
  </div>
</nz-card>

<nz-modal [(nzVisible)]="isVisible" nzWidth="1000px" [nzFooter]="nzModalFooter" [nzTitle]="modalTitle"
  (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
  <ng-container *nzModalContent>
    <div *ngIf="!modalcontent">暂无附件信息</div>
    <div [innerHTML]="modalcontent"></div>
  </ng-container>
  <ng-template #nzModalFooter>
    <button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button>
    <button nz-button nzType="default" (click)="handleCancel()">确定 </button>
  </ng-template>
</nz-modal>