Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop

This commit is contained in:
wangshiming
2022-04-28 20:12:01 +08:00
8 changed files with 495 additions and 365 deletions

View File

@ -37,7 +37,11 @@ import { CwcBankCardManagementIndexComponent } from './components/bank-card-mana
const routes: Routes = [ const routes: Routes = [
{ path: 'freight-account', component: FreightAccountComponent, data: { guard: { ability: ['FINANCIAL-FREIGHT-ACOUNT-list'] } } }, { path: 'freight-account', component: FreightAccountComponent, data: { guard: { ability: ['FINANCIAL-FREIGHT-ACOUNT-list'] } } },
{ path: 'freight-account/detail/:id', component: FreightAccountDetailComponent }, {
path: 'freight-account/detail/:id',
component: FreightAccountDetailComponent,
data: { guard: { ability: ['FINANCIAL-FREIGHT-ACOUNT-DETAIL-view'] } }
},
{ path: 'driver-account', component: DriverAccountComponent, data: { guard: { ability: ['FINANCIAL-DRIVER-ACOUNT-list'] } } }, { path: 'driver-account', component: DriverAccountComponent, data: { guard: { ability: ['FINANCIAL-DRIVER-ACOUNT-list'] } } },
{ {
path: 'driver-account/detail/:id', path: 'driver-account/detail/:id',

View File

@ -1,5 +1,5 @@
<!-- <!--
* @Description : * @Description :
* @Version : 1.0 * @Version : 1.0
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-06 20:20:26 * @Date : 2021-12-06 20:20:26
@ -8,18 +8,18 @@
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail\\bulk-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail\\bulk-detail.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
<page-header-wrapper [title]="'大宗订单详情'" [logo]="logo" [content]="headerContent"> <page-header-wrapper [title]="'大宗订单详情'" [logo]="logo">
<ng-template #logo> <ng-template #logo>
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()"> <button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
<i nz-icon nzType="left" nzTheme="outline"></i> <i nz-icon nzType="left" nzTheme="outline"></i>
</button> </button>
</ng-template> </ng-template>
<ng-template #headerContent> <ng-template #headerContent>
<div nz-row> <div class="mb-sm common-order-header" nz-row>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button> <div>
<h4 class="ml-md" style="font-size: 18px">订单号: {{ i?.billCode }}</h4> <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button>
</div> <b class="ml-md text-md">订单号: {{ i?.billCode }}</b>
<div nz-row style="display: flex; justify-content: end" class="mb-xs"> </div>
<div nz-col> <div nz-col>
<button (click)="cancellation()" nz-button <button (click)="cancellation()" nz-button
*ngIf="i?.billStatus !== '1' && i?.billStatus !== '5' && i?.billStatus !== '6' && i?.overallPaymentStatus != '2'" *ngIf="i?.billStatus !== '1' && i?.billStatus !== '5' && i?.billStatus !== '6' && i?.overallPaymentStatus != '2'"
@ -29,6 +29,7 @@
[acl-ability]="['ORDER-BULK-DETAIL-modifyOrder']" (click)="changeOrder()">修改订单</button> [acl-ability]="['ORDER-BULK-DETAIL-modifyOrder']" (click)="changeOrder()">修改订单</button>
</div> </div>
</div> </div>
<nz-divider class="divider-margin"></nz-divider>
<div> <div>
<div sv-container> <div sv-container>
<sv label="网络货运人">{{ i?.goodsResource?.enterpriseInfoName }} </sv> <sv label="网络货运人">{{ i?.goodsResource?.enterpriseInfoName }} </sv>
@ -52,10 +53,37 @@
</div> </div>
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card nzTitle="运单进度" #distannce1> <nz-card [nzBorderless]="true" class="mb0" #distannce1>
<div class="mb-sm common-order-header" nz-row>
<div>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button>
<b class="ml-md text-md" style="font-size: 18px">订单号: {{ i?.billCode }}</b>
</div>
<div>
<button (click)="cancellation()" nz-button
*ngIf="i?.billStatus !== '1' && i?.billStatus !== '5' && i?.billStatus !== '6' && i?.overallPaymentStatus != '2'"
acl [acl-ability]="['ORDER-BULK-DETAIL-cancelAnOrder']">取消订单</button>
<button nz-button
*ngIf="i?.billStatus == '4' || i?.billStatus == '5' || i?.billStatus == '2' || i?.billStatus == '3'" acl
[acl-ability]="['ORDER-BULK-DETAIL-modifyOrder']" (click)="changeOrder()">修改订单</button>
</div>
</div>
<nz-divider class="divider-margin"></nz-divider>
<div class="mb-lg" sv-container>
<sv label="网络货运人">{{ i?.goodsResource?.enterpriseInfoName }} </sv>
<sv label="货主">{{ i?.goodsResource?.shipperAppUserName }} </sv>
<sv label="所属项目">{{ i?.goodsResource?.enterpriseProjectName }}</sv>
<sv label="服务类型">{{ i?.goodsResource?.serviceTypeLabel }}</sv>
<sv label="录单员">{{ i?.createUserName }} {{ i?.createUserPhone ? "/" + i?.createUserPhone : ''}} </sv>
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}{{ i?.goodsResource?.dispatchPhone ? "/" +
i?.goodsResource?.dispatchPhone : ''}} </sv>
<sv label="货源编号">{{ i?.goodsResource?.resourceCode }} </sv>
<sv label="运单号">{{ i?.wayBill?.wayBillCode }}</sv>
<sv label="承诺付款天数">{{ i?.goodsResource?.paymentDays }}</sv>
</div>
<div class="approval-status"> <div class="approval-status">
<div style="width: 60%; margin: 0 auto"> <div class="step-row">
 
<nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical"> <nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical">
<nz-step *ngFor="let item of i?.scheduleVOList" [nzTitle]="item.state" [nzSubtitle]="item.stateTime" <nz-step *ngFor="let item of i?.scheduleVOList" [nzTitle]="item.state" [nzSubtitle]="item.stateTime"
[nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"></nz-step> [nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"></nz-step>
@ -64,13 +92,65 @@
</div> </div>
</nz-card> </nz-card>
<nz-card nzTitle="基本信息" #distannce2> <nz-card [nzBorderless]="true" class="mb0">
<sv-container col="1">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>装货卸货信息</span>
<span class="ml-sm text-sm">(
<label>{{ i?.loadingCount || '一' }}装</label>
<label>{{ i?.unloadingCount || '一' }}卸</label>)
</span>
</div>
<div nz-row [nzGutter]="24">
<div nz-col [nzSpan]="12">
<div class="handling-info p-md">
<ng-container *ngFor="let item of i?.unLoadingPlaceList">
<div class="flex" *ngIf="item.type === '1'">
<div 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 class="mb0">联系人:{{ item.appUserName }}{{ item.contractTelephone ? "/" + item.contractTelephone : ''
}}</p>
</div>
</div>
</div>
</ng-container>
</div>
</div>
<div nz-col [nzSpan]="12">
<div class="handling-info p-md">
<ng-container *ngFor="let item of i?.unLoadingPlaceList">
<div class="flex" *ngIf="item.type === '2'">
<div 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 class="mb0">联系人:{{ item.appUserName }}{{ item.contractTelephone ? "/" + item.contractTelephone : ''}}
</p>
</div>
</div>
</div>
</ng-container>
</div>
</div>
</div>
</nz-card>
<nz-card [nzBorderless]="true" class="mb0" #distannce2>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>基本信息</span>
</div>
<sv-container col="3">
<sv label="货物名称"> <sv label="货物名称">
{{i?.goodsInfoList?.[0]?.goodsName}} {{i?.goodsInfoList?.[0]?.goodsName}}
</sv> </sv>
</sv-container>
<sv-container col="2">
<sv label="货物数量"> <sv label="货物数量">
{{i?.goodsInfoList?.[0]?.weight}}吨,{{i?.goodsInfoList?.[0]?.volume}}方,{{i?.goodsInfoList?.[0]?.number}}件 </sv> {{i?.goodsInfoList?.[0]?.weight}}吨,{{i?.goodsInfoList?.[0]?.volume}}方,{{i?.goodsInfoList?.[0]?.number}}件 </sv>
<sv label="用车需求">{{ i?.carModel }}{{ i?.carLength ? "/" + i?.carLength : ''}} </sv> <sv label="用车需求">{{ i?.carModel }}{{ i?.carLength ? "/" + i?.carLength : ''}} </sv>
@ -89,77 +169,62 @@
<sv *ngIf="i?.billStatus =='4' || i?.billStatus =='5'" label="卸货数量"> {{ i?.settlementWeight }}吨,{{ <sv *ngIf="i?.billStatus =='4' || i?.billStatus =='5'" label="卸货数量"> {{ i?.settlementWeight }}吨,{{
i?.settlementVolume }}方</sv> i?.settlementVolume }}方</sv>
</sv-container> </sv-container>
<div class="mt-md">
<h4 class="text-md">装货卸货信息
<span class="ml-sm text-sm">(
<label>{{ i?.loadingCount || '一' }}装</label>
<label>{{ i?.unloadingCount || '一' }}卸</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?.unLoadingPlaceList">
<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 ? "/" + 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?.unLoadingPlaceList">
<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 ? "/" + item.contractTelephone : ''}}</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</nz-card> </nz-card>
<!-- <!--
结算依据为1时卸货时间不为空显示运费信息否则隐藏 结算依据为1时卸货时间不为空显示运费信息否则隐藏
结算依据为2时装货时间不为空显示运费信息否则隐藏 结算依据为2时装货时间不为空显示运费信息否则隐藏
--> -->
<nz-card [nzTitle]="priceTitel" #distannce3 <nz-card #distannce3
[hidden]="!(i?.settlementBasis ==='1' && i?.unloadTime) && !(i?.settlementBasis ==='2' && i?.loadTime)"> [hidden]="!(i?.settlementBasis ==='1' && i?.unloadTime) && !(i?.settlementBasis ==='2' && i?.loadTime)"
<ng-template #priceTitel> [nzBorderless]="true" class="mb0">
<span>运费信息</span><span <!-- <ng-template #priceTitel>
style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span>
</ng-template> <span>运费信息</span><span
<div style="margin-bottom: 18px"> style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span>
<span style="color: #da001b; font-size: 18px"> {{ i?.freightPrice }}{{ i?.freightTypeLabel }} </span>{{ </ng-template> -->
i?.settlementBasisLabel }}{{ <div class="font-weight-blod text-md detail-title">
i?.ruleLabel <a class="sign"></a>
}} <span>运费信息</span>
</div> <span class=" pl-sm text-warning">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span>
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> </div>
<ng-template st-row="prices" let-item let-index="index">
{{ item.price + item.surcharge | currency }} <st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"
</ng-template> [size]="'small'">
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template> <ng-template st-row="prices" let-item let-index="index">
<ng-template st-row="price" let-item let-index="index"> {{item.price | currency}} </ng-template> {{ item.price + item.surcharge | currency }}
<ng-template st-row="surcharge" let-item let-index="index"> {{item.surcharge | currency}} </ng-template> </ng-template>
</st> <ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
<div> <ng-template st-row="price" let-item let-index="index"> {{item.price | currency}} </ng-template>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | <ng-template st-row="surcharge" let-item let-index="index"> {{item.surcharge | currency}} </ng-template>
currency }} </st>
附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 | number: '0.2-2' }}%
</div>
<div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}/{{ i?.payeeIdNo }}</div> <div>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }} {{ i?.freightTypeLabel }}</span>
(运费{{ i?.totalFreight |
currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 | number: '0.2-2' }}%
<span class="text-warning"> ({{
i?.settlementBasisLabel }}{{
i?.ruleLabel
}})</span>
</div>
<!-- <div class="text-right">
<span style="color: #da001b; font-size: 18px"> {{ i?.freightPrice }}{{ i?.freightTypeLabel }} </span>{{
i?.settlementBasisLabel }}{{
i?.ruleLabel
}}
</div> -->
<div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}/{{ i?.payeeIdNo }}
</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card [nzBorderless]="true" class="mb0" #distannce4>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>附件信息</span>
</div>
<sv-container> <sv-container>
<sv label="协议附件"> <sv label="协议附件">
<a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a> &nbsp;&nbsp;&nbsp;&nbsp; <a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a> &nbsp;&nbsp;&nbsp;&nbsp;
@ -177,7 +242,11 @@
</sv> </sv>
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card nzTitle="补充信息"> <nz-card [nzBorderless]="true" class="mb0">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>补充信息</span>
</div>
<sv-container> <sv-container>
<sv label="是否回单"> <sv label="是否回单">
{{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }} {{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }}
@ -193,19 +262,17 @@
<sv label="详细地址" *ngIf="i?.supplementaryInformationVO?.stateReceipt"> <sv label="详细地址" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
{{ i?.supplementaryInformationVO?.address }} {{ i?.supplementaryInformationVO?.address }}
</sv> </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="备注"> <sv label="备注">
{{ i?.goodsResource?.remarks }} {{ i?.goodsResource?.remarks }}
</sv> </sv>
<sv col="1" label="回单凭证" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
<app-imagelist [imgList]="i?.receiptFilePath"></app-imagelist>
</sv>
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card #distannce5> <nz-card #distannce5 [nzBorderless]="true" class="mb0">
<p class="detail_title" ><span>|</span> 轨迹信息</p> <p class="detail_title"><span>|</span> 轨迹信息</p>
<div nz-row> <div nz-row>
<div nz-col [nzSpan]="24"> <div nz-col [nzSpan]="24">
<amap-path-simplifier [mapWidth]="'100%'" [mapHeight]="'600px'" [mapList]="mapList" [pois]="pois"> <amap-path-simplifier [mapWidth]="'100%'" [mapHeight]="'600px'" [mapList]="mapList" [pois]="pois">
@ -221,19 +288,19 @@
</div> </div>
</nz-card> </nz-card>
<nz-card> <nz-card [nzBorderless]="true" class="mb0">
<nz-tabset> <nz-tabset>
<nz-tab nzTitle="风险异常检测"> <nz-tab nzTitle="风险异常检测">
<div *ngIf="abnormalList.length > 0"> <div *ngIf="abnormalList.length > 0">
<div> <div>
您的订单可能存在交易风险,请及时提交申诉材料,提交成功后,平台将及时完成审核并通知您! 您的订单可能存在交易风险,请及时提交申诉材料,提交成功后,平台将及时完成审核并通知您!
</div>
<div>如果您的运单没有问题可以提出申诉并提供相关资料我们将24小时内审核反馈</div>
<ul *ngFor="let item of abnormalList">
<li style="color: red;">系统识别:{{item?.complianceName}}</li>
<li style="color: red;">{{item?.determineDetails}}</li>
</ul>
</div> </div>
<div>如果您的运单没有问题可以提出申诉并提供相关资料我们将24小时内审核反馈</div>
<ul *ngFor="let item of abnormalList">
<li style="color: red;">系统识别:{{item?.complianceName}}</li>
<li style="color: red;">{{item?.determineDetails}}</li>
</ul>
</div>
</nz-tab> </nz-tab>
<nz-tab nzTitle="异常预警"> <nz-tab nzTitle="异常预警">
<st #st [data]="service.$api_get_order_abnormalWarning" [columns]="logColumns3" <st #st [data]="service.$api_get_order_abnormalWarning" [columns]="logColumns3"
@ -248,7 +315,7 @@
{{item?.operator}}/{{item.telephone}} {{item?.operator}}/{{item.telephone}}
</ng-template> </ng-template>
</st> --> </st> -->
<app-logistics-time-line [data]="operationList"></app-logistics-time-line> <app-logistics-time-line [data]="operationList"></app-logistics-time-line>
</nz-tab> </nz-tab>
</nz-tabset> </nz-tabset>
</nz-card> </nz-card>
@ -263,4 +330,4 @@
<button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button> <button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button>
<button nz-button nzType="default" (click)="handleCancel()">确定 </button> <button nz-button nzType="default" (click)="handleCancel()">确定 </button>
</ng-template> </ng-template>
</nz-modal> </nz-modal>

View File

@ -1,94 +1,69 @@
:host { :host {
.btn-size { .btn-size {
font-size: 14px; font-size: 14px;
}
.bdr {
border-right: 1px solid #ccc;
}
.bdl {
border-left: 1px solid #ccc;
}
.source-info {
p {
margin-bottom: .5em;
}
}
.freight-info-box {
width: 95%;
}
.freigth-label {
display: inline-block;
width: 50px;
text-align: right;
}
.leftPadding {
padding-right: 100px;
}
.handling-info {
min-height: 90px;
border: 1px solid #ccc;
.loading-row {
display: flex;
} }
.bdr { .handling-info-icon {
border-right: 1px solid #ccc; width: 32px;
} height: 32px;
margin-right: 24px;
color: #fff;
line-height: 32px;
text-align: center;
border-radius: 50%;
.bdl { &.loading-bg {
border-left: 1px solid #ccc; background-color: #50D4AB;
}
.source-info {
p {
margin-bottom: .5em;
}
}
.freight-info-box {
width: 95%;
}
.freigth-label {
display : inline-block;
width : 50px;
text-align: right;
}
::ng-deep {
.approval-status {
.ant-steps {
width : 70%;
margin: 0 auto;
}
}
// .ant-tabs-top>.ant-tabs-nav,
// .ant-tabs-bottom>.ant-tabs-nav,
// .ant-tabs-top>div>.ant-tabs-nav,
// .ant-tabs-bottom>div>.ant-tabs-nav {
// margin: 0;
// }
// .ant-anchor-ink::before {
// width: 0;
// }
// .ant-tabs-card.ant-tabs-top>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,
// .ant-tabs-card.ant-tabs-bottom>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,
// .ant-tabs-card.ant-tabs-top>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,
// .ant-tabs-card.ant-tabs-bottom>div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab {
// margin-left: 40px
// }
}
.leftPadding {
padding-right: 100px;
}
.handling-info {
min-height: 100px;
border: 1px solid #ccc;
.loading-row {
display: flex;
}
.handling-info-icon {
width: 32px;
height: 32px;
margin-right: 24px;
color: #fff;
line-height: 32px;
text-align: center;
border-radius: 50%;
&.loading-bg {
background-color: #50D4AB;
}
&.unloaing-bg {
background: #F66F6A;
}
}
.info {
flex: 1;
}
.time-info {
margin-left: 56px;
}
} }
}
&.unloaing-bg {
background: #F66F6A;
}
}
.info {
flex: 1;
}
.time-info {
margin-left: 56px;
}
}
}

View File

@ -1,5 +1,5 @@
<!-- <!--
* @Description : * @Description :
* @Version : 1.0 * @Version : 1.0
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-28 14:42:03 * @Date : 2021-12-28 14:42:03
@ -8,19 +8,19 @@
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail\\vehicle-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail\\vehicle-detail.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
<page-header-wrapper [title]="'整车订单详情'" [logo]="logo" [content]="headerContent"> <page-header-wrapper [title]="'整车订单详情'" [logo]="logo">
<ng-template #logo> <ng-template #logo>
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()"> <button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
<i nz-icon nzType="left" nzTheme="outline"></i> <i nz-icon nzType="left" nzTheme="outline"></i>
</button> </button>
</ng-template> </ng-template>
<ng-template #headerContent> <ng-template #headerContent>
<div nz-row> <div class="mb-xs common-order-header" nz-row>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button> <div>
<h4 class="ml-md" style="font-size: 18px">订单号: {{ i?.billCode }}</h4> <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button>
</div> <b class="ml-md" style="font-size: 18px">订单号: {{ i?.billCode }}</b>
<div nz-row style="display: flex; justify-content: end" class="mb-xs"> </div>
<div nz-col> <div>
<button (click)="cancellation()" nz-button <button (click)="cancellation()" nz-button
*ngIf="i.billStatus == '4' || i.billStatus == '5' || i.billStatus == '2' || i.billStatus == '3' || i.billStatus == '1'" *ngIf="i.billStatus == '4' || i.billStatus == '5' || i.billStatus == '2' || i.billStatus == '3' || i.billStatus == '1'"
acl [acl-ability]="['ORDER-VEHICLE-DETAIL-cancelAnOrder']">取消订单</button> acl [acl-ability]="['ORDER-VEHICLE-DETAIL-cancelAnOrder']">取消订单</button>
@ -55,9 +55,40 @@
</div> </div>
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card nzTitle="运单进度" #distannce1> <nz-card [nzBorderless]="true" class="mb0" #distannce1>
<div class="mb-xs common-order-header" nz-row>
<div>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button>
<b class="ml-md" style="font-size: 18px">订单号: {{ i?.billCode }}</b>
</div>
<div>
<button (click)="cancellation()" nz-button
*ngIf="i.billStatus == '4' || i.billStatus == '5' || i.billStatus == '2' || i.billStatus == '3' || i.billStatus == '1'"
acl [acl-ability]="['ORDER-VEHICLE-DETAIL-cancelAnOrder']">取消订单</button>
<button nz-button (click)="changeOrder()"
*ngIf="i.billStatus == '4' || i.billStatus == '5' || i.billStatus == '2' || i.billStatus == '3'" acl
[acl-ability]="['ORDER-VEHICLE-DETAIL-modifyOrder']">修改订单</button>
</div>
</div>
<nz-divider class="divider-margin"></nz-divider>
<div>
<div class="mb-lg" sv-container>
<sv label="网络货运人">{{ i?.goodsResource?.enterpriseInfoName }} </sv>
<sv label="货主">{{ i?.goodsResource?.shipperAppUserName }} </sv>
<sv label="所属项目">{{ i?.goodsResource?.enterpriseProjectName }}</sv>
<sv label="服务类型">{{ i?.goodsResource?.serviceTypeLabel }}</sv>
<sv label="录单员">{{ i?.createUserName }} {{ i?.createUserPhone ? '/' + i?.createUserPhone : '' }} </sv>
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}{{ i?.goodsResource?.dispatchPhone ? '/' +
i?.goodsResource?.dispatchPhone : '' }}
</sv>
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
<sv label="货源编号">{{ i?.goodsResource?.resourceCode }} </sv>
<sv label="运单号">{{ i?.wayBill?.wayBillCode }}</sv>
<sv label="承诺付款天数">{{ i?.goodsResource?.paymentDays }}</sv>
</div>
</div>
<div class="approval-status"> <div class="approval-status">
<div style="width: 60%; margin: 0 auto"> <div class="step-row">
<nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical"> <nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical">
<nz-step *ngFor="let item of i?.scheduleVOList" [nzTitle]="item.state" [nzSubtitle]="item.stateTime" <nz-step *ngFor="let item of i?.scheduleVOList" [nzTitle]="item.state" [nzSubtitle]="item.stateTime"
[nzDescription]="item.cancelReason ? '取消原因' + item.cancelReason : ''" [nzDescription]="item.cancelReason ? '取消原因' + item.cancelReason : ''"
@ -66,38 +97,29 @@
</div> </div>
</div> </div>
</nz-card> </nz-card>
<nz-card [nzBorderless]="true" class="mb0">
<nz-card nzTitle="基本信息" #distannce2> <!-- <h4 class="text-md">装货卸货信息
<sv-container col="1">
<sv-title>货物信息</sv-title>
<sv label="网络货运人">
{{ i?.goodsResource?.enterpriseInfoName }}
</sv>
<sv label="货物名称">
{{i?.goodsInfoList?.[0]?.goodsName}}
</sv>
</sv-container>
<sv-container col="2">
<sv label="货物数量">
{{i?.goodsInfoList?.[0]?.weight}}吨,{{i?.goodsInfoList?.[0]?.volume}}方,{{i?.goodsInfoList?.[0]?.number}}件 </sv>
<sv label="用车需求">{{ i?.carModel }}{{ i?.carLength ? '/' + i?.carLength : '' }}</sv>
<sv label="承运司机"> {{ i?.driverName }}{{ i?.driverPhone ? '/' + i?.driverPhone : '' }}{{ i?.carNo ? '/' + i?.carNo :
'' }} </sv>
<sv label="车型车长载重"> {{ i?.driverCarModelLabel }},{{ i?.driverCarLengthLabel }}米,{{ i?.driverCarWeight }}吨 </sv>
</sv-container>
<div class="mt-md">
<h4 class="text-md">装货卸货信息
<span class="ml-sm text-sm">( <span class="ml-sm text-sm">(
<label>{{ i?.loadingCount }}装</label> <label>{{ i?.loadingCount }}装</label>
<label>{{ i?.unloadingCount }}卸</label> <label>{{ i?.unloadingCount }}卸</label>
) )
</span> </span>
</h4> </h4> -->
<div nz-row [nzGutter]="24"> <div class="font-weight-blod text-md detail-title">
<div nz-col [nzSpan]="12"> <a class="sign"></a>
<div class="handling-info p-md"> <span>装货卸货信息</span>
<div class="flex" *ngFor="let item of i?.unLoadingPlaceList"> <span class="ml-sm text-sm">(
<div *ngIf="item.type === '1'" class="loading-row"> <label>{{ i?.loadingCount }}装</label>
<label>{{ i?.unloadingCount }}卸</label>
)
</span>
</div>
<div nz-row [nzGutter]="24">
<div class="handling-col" nz-col [nzSpan]="12">
<div class="handling-info p-md">
<ng-container *ngFor="let item of i?.unLoadingPlaceList">
<div class="flex" *ngIf="item.type === '1'">
<div class="loading-row">
<div class="handling-info-icon loading-bg"></div> <div class="handling-info-icon loading-bg"></div>
<div class="info"> <div class="info">
<h4>装货地:{{ item?.province }}{{ item.city }}{{ item.area }}{{ item.detailedAddress }}</h4> <h4>装货地:{{ item?.province }}{{ item.city }}{{ item.area }}{{ item.detailedAddress }}</h4>
@ -105,11 +127,13 @@
</div> </div>
</div> </div>
</div> </div>
<p class="time-info">计划装货时间:{{ i?.goodsResource?.loadingTime }}</p> </ng-container>
</div> <p class="time-info">计划装货时间:{{ i?.goodsResource?.loadingTime }}</p>
</div> </div>
<div nz-col [nzSpan]="12"> </div>
<div class="handling-info p-md"> <div class="handling-col" nz-col [nzSpan]="12">
<div class="handling-info p-md">
<ng-container *ngFor="let item of i?.unLoadingPlaceList">
<div class="flex" *ngFor="let item of i?.unLoadingPlaceList"> <div class="flex" *ngFor="let item of i?.unLoadingPlaceList">
<div *ngIf="item.type === '2'" class="loading-row"> <div *ngIf="item.type === '2'" class="loading-row">
<div class="handling-info-icon unloaing-bg"></div> <div class="handling-info-icon unloaing-bg"></div>
@ -119,13 +143,39 @@
</div> </div>
</div> </div>
</div> </div>
<p class="time-info">计划卸货时间:{{ i?.goodsResource?.unloadingTime }}</p> </ng-container>
</div> <p class="time-info">计划卸货时间:{{ i?.goodsResource?.unloadingTime }}</p>
</div> </div>
</div> </div>
</div> </div>
</nz-card> </nz-card>
<nz-card nzTitle="服务信息"> <nz-card [nzBorderless]="true" class="mb0" #distannce2>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>基本信息</span>
</div>
<sv-container col="3">
<!-- <sv-title>货物信息</sv-title> -->
<sv label="网络货运人">
{{ i?.goodsResource?.enterpriseInfoName }}
</sv>
<sv label="货物名称">
{{i?.goodsInfoList?.[0]?.goodsName}}
</sv>
<sv label="货物数量">
{{i?.goodsInfoList?.[0]?.weight}}吨,{{i?.goodsInfoList?.[0]?.volume}}方,{{i?.goodsInfoList?.[0]?.number}}件 </sv>
<sv label="用车需求">{{ i?.carModel }}{{ i?.carLength ? '/' + i?.carLength : '' }}</sv>
<sv label="承运司机"> {{ i?.driverName }}{{ i?.driverPhone ? '/' + i?.driverPhone : '' }}{{ i?.carNo ? '/' + i?.carNo :
'' }} </sv>
<sv label="车型车长载重"> {{ i?.driverCarModelLabel }},{{ i?.driverCarLengthLabel }}米,{{ i?.driverCarWeight }}吨 </sv>
</sv-container>
</nz-card>
<nz-card [nzBorderless]="true" class="mb0">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>服务信息</span>
</div>
<sv-container> <sv-container>
<sv label="服务包"> <sv label="服务包">
{{ i?.goodsResource?.insuranceTypeLabel }} {{ i?.goodsResource?.insuranceTypeLabel }}
@ -139,7 +189,11 @@
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card nzTitle="运费信息" #distannce3> <nz-card [nzBorderless]="true" class="mb0" #distannce3>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>运费信息</span>
</div>
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> <st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
<ng-template st-row="price" let-item let-index="index"> <ng-template st-row="price" let-item let-index="index">
{{ item.price | currency }} {{ item.price | currency }}
@ -160,7 +214,11 @@
i?.payeePhone : '' }}/{{ i?.payeeIdNo }}</div> i?.payeePhone : '' }}/{{ i?.payeeIdNo }}</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card [nzBorderless]="true" class="mb0" #distannce4>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>附件信息</span>
</div>
<sv-container> <sv-container>
<sv label="协议附件"> <sv label="协议附件">
<a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a> &nbsp;&nbsp;&nbsp;&nbsp; <a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a> &nbsp;&nbsp;&nbsp;&nbsp;
@ -177,7 +235,11 @@
</sv> </sv>
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card nzTitle="补充信息"> <nz-card [nzBorderless]="true" class="mb0">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>补充信息</span>
</div>
<sv-container> <sv-container>
<sv label="是否回单"> <sv label="是否回单">
{{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }} {{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }}
@ -205,7 +267,7 @@
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card #distannce5> <nz-card [nzBorderless]="true" class="mb0" #distannce5>
<p class="detail_title"><span>|</span> 轨迹信息</p> <p class="detail_title"><span>|</span> 轨迹信息</p>
<div nz-row> <div nz-row>
<div nz-col [nzSpan]="24"> <div nz-col [nzSpan]="24">
@ -222,7 +284,7 @@
</div> </div>
</nz-card> </nz-card>
<nz-card> <nz-card [nzBorderless]="true" class="mb0">
<nz-tabset> <nz-tabset>
<nz-tab nzTitle="风险异常检测"> <nz-tab nzTitle="风险异常检测">
<div *ngIf="abnormalList.length > 0"> <div *ngIf="abnormalList.length > 0">
@ -262,4 +324,4 @@
<button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button> <button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button>
<button nz-button nzType="default" (click)="handleCancel()">确定 </button> <button nz-button nzType="default" (click)="handleCancel()">确定 </button>
</ng-template> </ng-template>
</nz-modal> </nz-modal>

View File

@ -1,84 +1,82 @@
:host { :host {
.btn-size { .btn-size {
font-size: 14px; font-size: 14px;
} }
.bdr { .bdr {
border-right: 1px solid #ccc; border-right: 1px solid #ccc;
} }
.bdl { .bdl {
border-left: 1px solid #ccc; border-left: 1px solid #ccc;
} }
.source-info { .source-info {
p { p {
margin-bottom: .5em; margin-bottom: .5em;
}
} }
}
.freight-info-box { .freight-info-box {
width: 95%; width: 95%;
} }
.freigth-label { .freigth-label {
display : inline-block; display: inline-block;
width : 50px; width: 50px;
text-align: right; text-align: right;
} }
::ng-deep {
.approval-status {
.ant-steps {
width : 70%;
margin: 0 auto;
}
}
} .leftPadding {
padding-right: 100px;
}
.hide {
display: none;
}
.handling-col {
min-height: 90px;
.leftPadding {
padding-right: 100px;
}
.hide{
display: none;
}
.handling-info { .handling-info {
min-height: 100px; height: 100%;
border: 1px solid #ccc; border: 1px solid #ccc;
.loading-row { .loading-row {
display: flex; display: flex;
}
.handling-info-icon {
width: 32px;
height: 32px;
margin-right: 24px;
color: #fff;
line-height: 32px;
text-align: center;
border-radius: 50%;
&.loading-bg {
background-color: #50D4AB;
} }
.handling-info-icon { &.unloaing-bg {
width: 32px; background: #F66F6A;
height: 32px;
margin-right: 24px;
color: #fff;
line-height: 32px;
text-align: center;
border-radius: 50%;
&.loading-bg {
background-color: #50D4AB;
}
&.unloaing-bg {
background: #F66F6A;
}
}
.info {
flex: 1;
}
.time-info {
margin-left: 56px;
} }
} }
.target-fix { }
display: block;
margin-top: 290px; .info {
} flex: 1;
} }
.time-info {
margin-left: 56px;
}
}
.target-fix {
display: block;
margin-top: 290px;
}
}

View File

@ -11,7 +11,7 @@
<div class="mb-sm common-order-header" nz-row> <div class="mb-sm common-order-header" nz-row>
<div> <div>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button>
<b class="ml-md">货源编码 : {{ i?.resourceCode }}</b> <b class="ml-md text-md">货源编码 : {{ i?.resourceCode }}</b>
</div> </div>
<div> <div>
<button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl

View File

@ -13,14 +13,7 @@
<nz-card> <nz-card>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf #sf [schema]="schema" [ui]="ui" [mode]="'search'" [loading]="false" (formSubmit)="st?.load(1)"
(formReset)="resetSF()"></sf>
</div>
<!-- 查询字段大于3个时根据展开状态调整布局 --> <!-- 查询字段大于3个时根据展开状态调整布局 -->
<ng-container *ngIf="queryFieldCount > 4">
<div nz-col [nzSpan]="_$expand ? 24 : 18"> <div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf> <sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
</div> </div>
@ -35,7 +28,6 @@
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
</button> </button>
</div> </div>
</ng-container>
</div> </div>
</nz-card> </nz-card>

View File

@ -6,7 +6,7 @@
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\bulk-detail\\bulk-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\bulk-detail\\bulk-detail.component.html
--> -->
<page-header-wrapper [title]="'大宗运单详情'" [logo]="logo" [content]="headerContent"> <page-header-wrapper [title]="'大宗运单详情'" [logo]="logo">
<ng-template #logo> <ng-template #logo>
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()"> <button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
<i nz-icon nzType="left" nzTheme="outline"></i> <i nz-icon nzType="left" nzTheme="outline"></i>
@ -51,10 +51,33 @@
</div> </div>
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card nzTitle="运单进度" #distannce1> <nz-card #distannce1>
<div class="mb-sm common-order-header" nz-row>
<div>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{i?.wayBillStatusLabel}}</button>
<b class="ml-md text-md">运单号: {{ i?.wayBillCode }}</b>
</div>
</div>
<div nz-col>
<button nz-button *ngIf="i?.wayBillStatus == '2'" (click)="sureDepart(i)" acl
[acl-ability]="['WAYBILL-BULK-DETAIL-insertBulkStartCarInfo']">确认发车</button>
<button nz-button nzType="primary" *ngIf="i?.wayBillStatus == '3'" (click)="sureArrive(i)" nzGhost acl
[acl-ability]="['WAYBILL-BULK-DETAIL-insertBulkUnloadCarInfo']">确认到车</button>
</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}}</sv>
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
<sv label="货源编号">{{ i?.resourceCode }} </sv>
<sv label="承诺付款天数">{{ i?.paymentDays }}</sv>
</div>
</div>
<div class="approval-status"> <div class="approval-status">
<div style="width: 60%; margin: 0 auto"> <div class="step-row">
 
<nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical"> <nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical">
<nz-step *ngFor="let item of i?.scheduleVOList" [nzTitle]="item.state" [nzSubtitle]="item.stateTime" <nz-step *ngFor="let item of i?.scheduleVOList" [nzTitle]="item.state" [nzSubtitle]="item.stateTime"
[nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"></nz-step> [nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"></nz-step>
@ -62,8 +85,51 @@
</div> </div>
</div> </div>
</nz-card> </nz-card>
<nz-card>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>装货卸货信息</span>
<span class="ml-sm text-sm">(
<label>{{i?.loadingNumber || '一'}}装</label>
<label>{{i?.dischargeNumber || '一'}}卸</label>
)
</span>
</div>
<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>
</nz-card>
<nz-card nzTitle="基本信息" #distannce1> <nz-card [nzBorderless]="true" class="mb0" #distannce1>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>基本信息</span>
</div>
<sv-container col="1"> <sv-container col="1">
<sv label="货物名称"> <sv label="货物名称">
{{i?.goodsInfos?.[0]?.goodsName}} {{i?.goodsInfos?.[0]?.goodsName}}
@ -99,43 +165,7 @@
{{ i?.settlementWeight }}吨,{{ i?.settlementVolume }}方 {{ i?.settlementWeight }}吨,{{ i?.settlementVolume }}方
</sv> </sv>
</sv-container> </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>
<!-- <nz-card [nzTitle]="'运费信息' +'(到货后'+i?.paymentDays+'天内支付运费)'" #distannce3> <!-- <nz-card [nzTitle]="'运费信息' +'(到货后'+i?.paymentDays+'天内支付运费)'" #distannce3>
<h2>{{i?.freightPrice}}{{i?.goodsInfos?.[0]?.freightTypeLabel}}{{ i?.goodsInfos?.[0]?.settlementBasisLabel ? i?.goodsInfos?.[0]?.settlementBasisLabel + '' :' ' }}{{i?.goodsInfos?.[0]?.ruleLabel}}</h2> <h2>{{i?.freightPrice}}{{i?.goodsInfos?.[0]?.freightTypeLabel}}{{ i?.goodsInfos?.[0]?.settlementBasisLabel ? i?.goodsInfos?.[0]?.settlementBasisLabel + '' :' ' }}{{i?.goodsInfos?.[0]?.ruleLabel}}</h2>
@ -165,7 +195,9 @@
结算依据为2时装货时间不为空显示运费信息否则隐藏 结算依据为2时装货时间不为空显示运费信息否则隐藏
--> -->
<nz-card [nzTitle]="priceTitel" #distannce3 <nz-card [nzTitle]="priceTitel" #distannce3
[hidden]="!(i?.settlementBasis ==='1' && i?.unloadTime) && !(i?.settlementBasis ==='2' && i?.loadTime)"> [hidden]="!(i?.settlementBasis ==='1' && i?.unloadTime) && !(i?.settlementBasis ==='2' && i?.loadTime)"
[nzBorderless]="true" class="mb0">
<ng-template #priceTitel> <ng-template #priceTitel>
<span>运费信息</span><span <span>运费信息</span><span
style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span> style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span>
@ -176,7 +208,7 @@
i?.ruleLabel i?.ruleLabel
}} }}
</div> </div>
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> <st size="small" #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
<ng-template st-row="prices" let-item let-index="index"> <ng-template st-row="prices" let-item let-index="index">
{{ item.price + item.surcharge | currency }} {{ item.price + item.surcharge | currency }}
</ng-template> </ng-template>
@ -191,7 +223,7 @@
</div> </div>
<div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}</div> <div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}</div>
</nz-card> </nz-card>
<nz-card nzTitle="附件信息" #distannce4> <nz-card nzTitle="附件信息" [nzBorderless]="true" class="mb0" #distannce4>
<sv-container> <sv-container>
<sv label="协议附件"> <sv label="协议附件">
<a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a> &nbsp;&nbsp;&nbsp;&nbsp; <a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a> &nbsp;&nbsp;&nbsp;&nbsp;
@ -209,7 +241,7 @@
</sv> </sv>
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card nzTitle="补充信息"> <nz-card nzTitle="补充信息" [nzBorderless]="true" class="mb0">
<sv-container> <sv-container>
<sv label="是否回单"> <sv label="是否回单">
{{i?.receiptType == 1 ?'是':'否'}} {{i?.receiptType == 1 ?'是':'否'}}
@ -238,7 +270,7 @@
</sv-container> </sv-container>
</nz-card> </nz-card>
<nz-card> <nz-card class="mb0">
<p class="detail_title" #distannce5><span>|</span> 轨迹信息</p> <p class="detail_title" #distannce5><span>|</span> 轨迹信息</p>
<div nz-row> <div nz-row>
<div nz-col [nzSpan]="24"> <div nz-col [nzSpan]="24">
@ -265,4 +297,4 @@
<button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button> <button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button>
<button nz-button nzType="default" (click)="handleCancel()">确定 </button> <button nz-button nzType="default" (click)="handleCancel()">确定 </button>
</ng-template> </ng-template>
</nz-modal> </nz-modal>