Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop
This commit is contained in:
		| @ -1,3 +1,13 @@ | |||||||
|  | /* | ||||||
|  |  * @Description  : | ||||||
|  |  * @Version      : 1.0 | ||||||
|  |  * @Author       : Shiming | ||||||
|  |  * @Date         : 2022-04-28 20:27:07 | ||||||
|  |  * @LastEditors  : Shiming | ||||||
|  |  * @LastEditTime : 2022-04-28 21:10:06 | ||||||
|  |  * @FilePath     : \\tms-obc-web\\src\\app\\routes\\datatable\\datatable-routing.module.ts | ||||||
|  |  * Copyright (C) 2022 huzhenhong. All rights reserved. | ||||||
|  |  */ | ||||||
| import { NgModule } from '@angular/core'; | import { NgModule } from '@angular/core'; | ||||||
| import { RouterModule, Routes } from '@angular/router'; | import { RouterModule, Routes } from '@angular/router'; | ||||||
| import { DatatableCustomindexComponent } from './components/customtable/customindex/customindex.component'; | import { DatatableCustomindexComponent } from './components/customtable/customindex/customindex.component'; | ||||||
| @ -20,29 +30,33 @@ import { DatatableReportingFundInfoComponent } from './reporting/components/fund | |||||||
| import { DatatableDatascreenComponent } from './components/datascreen/datascreen.component'; | import { DatatableDatascreenComponent } from './components/datascreen/datascreen.component'; | ||||||
|  |  | ||||||
| const routes: Routes = [ | const routes: Routes = [ | ||||||
|   { path: 'dataindex', component: DatatableDataindexComponent }, |   { path: 'dataindex', component: DatatableDataindexComponent, data: { guard: { ability: ['dataindex-search'] } } }, | ||||||
|   { path: 'customtable/customindex', component: DatatableCustomindexComponent }, |   { path: 'customtable/customindex', component: DatatableCustomindexComponent, data: { guard: { ability: ['customindex-client'] } } }, | ||||||
|   { path: 'customtable/owner', component: DatatableOwnerComponent }, |   { path: 'customtable/owner', component: DatatableOwnerComponent, data: { guard: { ability: ['owner-search'] } } }, | ||||||
|   { path: 'customtable/driver', component: DatatableDriverComponent }, |   { path: 'customtable/driver', component: DatatableDriverComponent, data: { guard: { ability: ['driver-search'] } } }, | ||||||
|   { path: 'customtable/mancustomtable', component: DatatableMancustomtableComponent }, |   { | ||||||
|   { path: 'customtable/partnertable', component: DatatablePartnertableComponent }, |     path: 'customtable/mancustomtable', | ||||||
|   { path: 'operationtable', component: DatatableOperationtableComponent }, |     component: DatatableMancustomtableComponent, | ||||||
|   { path: 'reporting/order', component: DatatableOrderReportingComponent }, |     data: { guard: { ability: ['mancustomtable-search'] } } | ||||||
|   { path: 'compliancetabel/index', component: DatatableComplianceIndexComponent }, |   }, | ||||||
|   { path: 'compliancetabel/salesman', component: DatatableComplianceSalesmanComponent }, |   { path: 'customtable/partnertable', component: DatatablePartnertableComponent, | ||||||
|   { path: 'compliancetabel/customer', component: DatatableComplianceCustomerComponent }, |   data: { guard: { ability: ['partnertable-search'] } } }, | ||||||
|   { path: 'financetable', component: DatatableFinancetableComponent }, |   { path: 'operationtable', component: DatatableOperationtableComponent, data: { guard: { ability: ['operationtable-search'] } }  }, | ||||||
|   { path: 'invoicetable', component: DatatableInvoicetableComponent }, |   { path: 'reporting/order', component: DatatableOrderReportingComponent, data: { guard: { ability: ['ORDER-REPORTING-search'] } } }, | ||||||
|   { path: 'reporting/fund', component: DatatableFundReportingComponent }, |   { path: 'compliancetabel/index', component: DatatableComplianceIndexComponent , data: { guard: { ability: ['index-lRateQualified'] } }}, | ||||||
|   { path: 'busitable/busiindex', component: DatatableBusiindexComponent }, |   { path: 'compliancetabel/salesman', component: DatatableComplianceSalesmanComponent, data: { guard: { ability: ['salesman-ComplianceReportPage'] } } }, | ||||||
|   { path: 'busitable/mantable', component: DatatableMantableComponent }, |   { path: 'compliancetabel/customer', component: DatatableComplianceCustomerComponent, data: { guard: { ability: ['customer-search'] } } }, | ||||||
|   { path: 'reporting/fund', component: DatatableFundReportingComponent }, |   { path: 'financetable', component: DatatableFinancetableComponent , data: { guard: { ability: ['financetable-search'] } }}, | ||||||
|   { path: 'fund-info', component: DatatableReportingFundInfoComponent }, |   { path: 'invoicetable', component: DatatableInvoicetableComponent , data: { guard: { ability: ['invoicetable-search'] } }}, | ||||||
|   { path: 'datascreen', component: DatatableDatascreenComponent }]; |   { path: 'reporting/fund', component: DatatableFundReportingComponent , data: { guard: { ability: ['FUND-REPORTING-search'] } }}, | ||||||
|  |   { path: 'busitable/busiindex', component: DatatableBusiindexComponent , data: { guard: { ability: ['busiindex-search'] } }}, | ||||||
|  |   { path: 'busitable/mantable', component: DatatableMantableComponent, data: { guard: { ability: ['customer-search'] } } }, | ||||||
|  |   { path: 'fund-info', component: DatatableReportingFundInfoComponent , data: { guard: { ability: ['customer-search'] } }}, | ||||||
|  |   { path: 'datascreen', component: DatatableDatascreenComponent, data: { guard: { ability: ['datascreen-search'] } } } | ||||||
|  | ]; | ||||||
|  |  | ||||||
| @NgModule({ | @NgModule({ | ||||||
|   imports: [RouterModule.forChild(routes)], |   imports: [RouterModule.forChild(routes)], | ||||||
|   exports: [RouterModule] |   exports: [RouterModule] | ||||||
| }) | }) | ||||||
| export class DatatableRoutingModule { } | export class DatatableRoutingModule {} | ||||||
|  | |||||||
| @ -1,3 +1,13 @@ | |||||||
|  | <!-- | ||||||
|  |  * @Description  :  | ||||||
|  |  * @Version      : 1.0 | ||||||
|  |  * @Author       : Shiming | ||||||
|  |  * @Date         : 2022-04-28 20:27:07 | ||||||
|  |  * @LastEditors  : Shiming | ||||||
|  |  * @LastEditTime : 2022-04-28 21:15:20 | ||||||
|  |  * @FilePath     : \\tms-obc-web\\src\\app\\routes\\datatable\\reporting\\components\\order-reporting\\order-reporting.component.html | ||||||
|  |  * Copyright (C) 2022 huzhenhong. All rights reserved. | ||||||
|  | --> | ||||||
| <page-header-wrapper [title]="''"></page-header-wrapper> | <page-header-wrapper [title]="''"></page-header-wrapper> | ||||||
|  |  | ||||||
| <nz-card> | <nz-card> | ||||||
| @ -85,6 +95,6 @@ | |||||||
|     <button nz-button nzType="primary" (click)="updateData()" acl |     <button nz-button nzType="primary" (click)="updateData()" acl | ||||||
|       [acl-ability]="['ORDER-REPORTING-update-data']">更新数据</button> |       [acl-ability]="['ORDER-REPORTING-update-data']">更新数据</button> | ||||||
|     <button nz-button nzType="primary" (click)="uploadSetting()" acl |     <button nz-button nzType="primary" (click)="uploadSetting()" acl | ||||||
|       [acl-ability]="['ORDER-REPORTING-search']">上传设置</button> |       [acl-ability]="['ORDER-REPORTING-search-updata']">上传设置</button> | ||||||
|   </div> |   </div> | ||||||
| </ng-template> | </ng-template> | ||||||
|  | |||||||
| @ -128,7 +128,7 @@ | |||||||
|             </div> |             </div> | ||||||
|           </div> |           </div> | ||||||
|         </ng-container> |         </ng-container> | ||||||
|         <p class="time-info">计划装货时间:{{ i?.goodsResource?.loadingTime }}</p> |         <p class="time-info mb0">计划装货时间:{{ i?.goodsResource?.loadingTime }}</p> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|     <div class="handling-col" nz-col [nzSpan]="12"> |     <div class="handling-col" nz-col [nzSpan]="12"> | ||||||
| @ -144,7 +144,7 @@ | |||||||
|             </div> |             </div> | ||||||
|           </div> |           </div> | ||||||
|         </ng-container> |         </ng-container> | ||||||
|         <p class="time-info">计划卸货时间:{{ i?.goodsResource?.unloadingTime }}</p> |         <p class="time-info mb0">计划卸货时间:{{ i?.goodsResource?.unloadingTime }}</p> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|   </div> |   </div> | ||||||
|  | |||||||
| @ -4,7 +4,7 @@ | |||||||
|  * @Author       : Shiming |  * @Author       : Shiming | ||||||
|  * @Date         : 2022-01-06 09:24:00 |  * @Date         : 2022-01-06 09:24:00 | ||||||
|  * @LastEditors  : Shiming |  * @LastEditors  : Shiming | ||||||
|  * @LastEditTime : 2022-04-07 09:43:47 |  * @LastEditTime : 2022-04-28 20:50:36 | ||||||
|  * @FilePath     : \\tms-obc-web\\src\\app\\routes\\order-management\\order-management-routing.module.ts |  * @FilePath     : \\tms-obc-web\\src\\app\\routes\\order-management\\order-management-routing.module.ts | ||||||
|  * Copyright (C) 2022 huzhenhong. All rights reserved. |  * Copyright (C) 2022 huzhenhong. All rights reserved. | ||||||
|  */ |  */ | ||||||
|  | |||||||
| @ -53,7 +53,7 @@ | |||||||
|       已选择 |       已选择 | ||||||
|       <strong class="text-red">{{ selectedRows.length }}</strong> 条数据 |       <strong class="text-red">{{ selectedRows.length }}</strong> 条数据 | ||||||
|     </div> |     </div> | ||||||
|     <button *ngIf="selectedIndex === '1' || selectedIndex === '4'" nz-button nzType="primary" (click)="upload()">上传</button> |     <button *ngIf="selectedIndex === '1' || selectedIndex === '4'" nz-button nzType="primary" (click)="upload()"   acl [acl-ability]="['TAX_INVOICE_REPORT-upload']">上传</button> | ||||||
|     <button *ngIf="selectedIndex === '3'" nz-button nzType="primary" (click)="recall()" acl [acl-ability]="['TAX_INVOICE_REPORT-recall']">撤回</button> |     <button *ngIf="selectedIndex === '3'" nz-button nzType="primary" (click)="recall()" acl [acl-ability]="['TAX_INVOICE_REPORT-recall']">撤回</button> | ||||||
|   </div> |   </div> | ||||||
| </ng-template> | </ng-template> | ||||||
|  | |||||||
| @ -13,29 +13,7 @@ | |||||||
|     </button> |     </button> | ||||||
|   </ng-template> |   </ng-template> | ||||||
|   <ng-template #headerContent> |   <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 *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> |     <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> |  | ||||||
|       <nz-tabset style="margin-top: 15px;"> |       <nz-tabset style="margin-top: 15px;"> | ||||||
|         <nz-tab nzTitle="装卸货信息" (nzClick)="goDistance(distannce1)"> |         <nz-tab nzTitle="装卸货信息" (nzClick)="goDistance(distannce1)"> | ||||||
|         </nz-tab> |         </nz-tab> | ||||||
| @ -51,20 +29,21 @@ | |||||||
|     </div> |     </div> | ||||||
|   </ng-template> |   </ng-template> | ||||||
| </page-header-wrapper> | </page-header-wrapper> | ||||||
| <nz-card #distannce1> | <nz-card [nzBorderless]="true" class="mb0" #distannce1> | ||||||
|   <div class="mb-sm common-order-header" nz-row> |   <div class=" common-order-header" nz-row> | ||||||
|     <div> |     <div> | ||||||
|       <button nz-button nzType="primary" nzSize="small" nzDanger>{{i?.wayBillStatusLabel}}</button> |       <button nz-button nzType="primary" nzSize="small" nzDanger>{{i?.wayBillStatusLabel}}</button> | ||||||
|       <b class="ml-md text-md">运单号: {{ i?.wayBillCode }}</b> |       <b class="ml-md text-md">运单号: {{ i?.wayBillCode }}</b> | ||||||
|     </div> |     </div> | ||||||
|  |     <div> | ||||||
|  |       <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> | ||||||
|   <div nz-col> |   <nz-divider class="mt-sm mb-sm"></nz-divider> | ||||||
|     <button nz-button *ngIf="i?.wayBillStatus == '2'" (click)="sureDepart(i)" acl |   <div class="mb-lg"> | ||||||
|       [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> |     <div sv-container> | ||||||
|       <sv label="网络货运人">{{ i?.enterpriseInfoName }} </sv> |       <sv label="网络货运人">{{ i?.enterpriseInfoName }} </sv> | ||||||
|       <sv label="货主">{{ i?.shippername }} </sv> |       <sv label="货主">{{ i?.shippername }} </sv> | ||||||
| @ -85,7 +64,7 @@ | |||||||
|     </div> |     </div> | ||||||
|   </div> |   </div> | ||||||
| </nz-card> | </nz-card> | ||||||
| <nz-card> | <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|   <div class="font-weight-blod text-md detail-title"> |   <div class="font-weight-blod text-md detail-title"> | ||||||
|     <a class="sign"></a> |     <a class="sign"></a> | ||||||
|     <span>装货卸货信息</span> |     <span>装货卸货信息</span> | ||||||
| @ -96,27 +75,27 @@ | |||||||
|     </span> |     </span> | ||||||
|   </div> |   </div> | ||||||
|   <div nz-row [nzGutter]="24"> |   <div nz-row [nzGutter]="24"> | ||||||
|     <div nz-col [nzSpan]="12"> |     <div class="handling-col" nz-col [nzSpan]="12"> | ||||||
|       <div class="handling-info p-md"> |       <div class="handling-info p-md"> | ||||||
|         <div class="flex" *ngFor="let item of i?.loadingPlace"> |         <div class="flex" *ngFor="let item of i?.loadingPlace"> | ||||||
|           <div *ngIf="item.type === '1'" class="loading-row"> |           <div *ngIf="item.type === '1'" 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> | ||||||
|               <p>联系人:{{item.appUserName}}/{{item.contractTelephone}}</p> |               <p class="mb0">联系人:{{item.appUserName}}/{{item.contractTelephone}}</p> | ||||||
|             </div> |             </div> | ||||||
|           </div> |           </div> | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|     <div nz-col [nzSpan]="12"> |     <div class="handling-col" nz-col [nzSpan]="12"> | ||||||
|       <div class="handling-info p-md"> |       <div class="handling-info p-md"> | ||||||
|         <div class="flex" *ngFor="let item of i?.dischargePlace"> |         <div class="flex" *ngFor="let item of i?.dischargePlace"> | ||||||
|           <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> | ||||||
|             <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> | ||||||
|               <p>联系人:{{item.appUserName}}/{{item.contractTelephone}}</p> |               <p class="mb0">联系人:{{item.appUserName}}/{{item.contractTelephone}}</p> | ||||||
|             </div> |             </div> | ||||||
|           </div> |           </div> | ||||||
|         </div> |         </div> | ||||||
| @ -194,14 +173,16 @@ | |||||||
| 结算依据为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)" | ||||||
|   [nzBorderless]="true" class="mb0"> |   [nzBorderless]="true" class="mb0"> | ||||||
|  |   <div class="font-weight-blod text-md detail-title"> | ||||||
|  |     <a class="sign"></a> | ||||||
|  |     <span>运费信息</span> | ||||||
|  |     <span class="pl-sm text-warning">到货后{{i?.goodsResource?.paymentDays}}天内支付运费</span> | ||||||
|  |   </div> | ||||||
|  |  | ||||||
|  |  | ||||||
|   <ng-template #priceTitel> |  | ||||||
|     <span>运费信息</span><span |  | ||||||
|       style="padding-left: 24px; color: #f59a23;font-size: small;">到货后{{i?.goodsResource.paymentDays}}天内支付运费</span> |  | ||||||
|   </ng-template> |  | ||||||
|   <div style="margin-bottom: 18px"> |   <div style="margin-bottom: 18px"> | ||||||
|     <span style="color: #da001b; font-size: 18px"> {{ i?.freightPrice }}{{ i?.freightTypeLabel }} </span>({{ |     <span style="color: #da001b; font-size: 18px"> {{ i?.freightPrice }}{{ i?.freightTypeLabel }} </span>({{ | ||||||
|     i?.settlementBasisLabel }},{{ |     i?.settlementBasisLabel }},{{ | ||||||
| @ -223,7 +204,11 @@ | |||||||
|   </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="附件信息" [nzBorderless]="true" class="mb0" #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>      |       <a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a>      | ||||||
| @ -241,7 +226,11 @@ | |||||||
|     </sv> |     </sv> | ||||||
|   </sv-container> |   </sv-container> | ||||||
| </nz-card> | </nz-card> | ||||||
| <nz-card nzTitle="补充信息" [nzBorderless]="true" class="mb0"> | <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?.receiptType == 1 ?'是':'否'}} |       {{i?.receiptType == 1 ?'是':'否'}} | ||||||
| @ -270,7 +259,7 @@ | |||||||
|   </sv-container> |   </sv-container> | ||||||
| </nz-card> | </nz-card> | ||||||
|  |  | ||||||
| <nz-card class="mb0"> | <nz-card class="mb0" [nzBorderless]="true"> | ||||||
|   <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"> | ||||||
|  | |||||||
| @ -1,70 +1,36 @@ | |||||||
| :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; |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     ::ng-deep{ |   .bdr { | ||||||
|       .approval-status{ |     border-right: 1px solid #ccc; | ||||||
|          .ant-steps{ |   } | ||||||
|              width: 70%; |  | ||||||
|              margin: 0 auto; |   .bdl { | ||||||
|          }  |     border-left: 1px solid #ccc; | ||||||
|       }   |   } | ||||||
|  |  | ||||||
|  |   .source-info { | ||||||
|  |     p { | ||||||
|  |       margin-bottom: .5em; | ||||||
|     } |     } | ||||||
|     .leftPadding { |   } | ||||||
|         padding-right: 100px; |  | ||||||
|     } |  | ||||||
|     .handling-info { |  | ||||||
|         min-height: 100px; |  | ||||||
|         border: 1px solid #ccc; |  | ||||||
|  |  | ||||||
|         .loading-row { |   .freight-info-box { | ||||||
|           display: flex; |     width: 95%; | ||||||
|         } |   } | ||||||
|  |  | ||||||
|         .handling-info-icon { |   .freigth-label { | ||||||
|           width: 32px; |     display: inline-block; | ||||||
|           height: 32px; |     width: 50px; | ||||||
|           margin-right: 24px; |     text-align: right; | ||||||
|           color: #fff; |   } | ||||||
|           line-height: 32px; |  | ||||||
|           text-align: center; |  | ||||||
|           border-radius: 50%; |  | ||||||
|  |  | ||||||
|           &.loading-bg { |  | ||||||
|             background-color: #50D4AB; |  | ||||||
|           } |  | ||||||
|  |  | ||||||
|           &.unloaing-bg { |   .leftPadding { | ||||||
|             background: #F66F6A; |     padding-right: 100px; | ||||||
|           } |   } | ||||||
|         } |  | ||||||
|  |  | ||||||
|         .info { |  | ||||||
|           flex: 1; |  | ||||||
|         } |  | ||||||
|  |  | ||||||
|         .time-info { |  | ||||||
|           margin-left: 56px; |  | ||||||
|         } |  | ||||||
|       } |  | ||||||
| } | } | ||||||
| @ -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\\vehicle-detail\\vehicle-detail.component.html |  * @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}"> | <page-header-wrapper [title]="'整车运单详情'" [logo]="logo" [ngClass]="{'affix': scrollTop>210}"> | ||||||
|   <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> | ||||||
| @ -50,19 +50,85 @@ | |||||||
|     </div> |     </div> | ||||||
|   </ng-template> |   </ng-template> | ||||||
| </page-header-wrapper> | </page-header-wrapper> | ||||||
| <nz-card nzTitle="运单进度"> | <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|  |   <div nz-row class="mb-xs common-order-header"> | ||||||
|  |     <div> | ||||||
|  |       <button nz-button nzType="primary" nzSize="small" nzDanger>{{i?.wayBillStatusLabel}}</button> | ||||||
|  |       <b class="ml-md" style="font-size: 18px;">运单号: {{ i?.wayBillCode }}</b> | ||||||
|  |     </div> | ||||||
|  |     <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> | ||||||
|  |   <nz-divider class="mt-sm mb-sm"></nz-divider> | ||||||
|  |   <div class=""> | ||||||
|  |     <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> | ||||||
|  |   </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"     |           <nz-step     *ngFor="let item of i?.scheduleVOList"     [nzTitle]="item.state" [nzSubtitle]="item.stateTime"   | ||||||
|           [nzSubtitle]="item.stateTime"     [nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"  > |             [nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"  > | ||||||
|             </nz-step> |             </nz-step> | ||||||
|          </nz-steps> |          </nz-steps> | ||||||
|     </div> |     </div> | ||||||
|   </div> |   </div> | ||||||
| </nz-card> | </nz-card> | ||||||
|  | <nz-card [nzBorderless]="true" class="mb0"> | ||||||
| <nz-card nzTitle="基本信息" #distannce1> |   <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 class="handling-col" 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 class="handling-col" 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 [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}} | ||||||
| @ -90,45 +156,13 @@ | |||||||
|       {{i?.unloadingTime}} |       {{i?.unloadingTime}} | ||||||
|     </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="服务信息"> | <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?.insuranceTypeLabel}} |       {{i?.insuranceTypeLabel}} | ||||||
| @ -141,7 +175,12 @@ | |||||||
|     </sv> |     </sv> | ||||||
|   </sv-container> |   </sv-container> | ||||||
| </nz-card> | </nz-card> | ||||||
| <nz-card [nzTitle]="'运费信息' +'(到货后'+i?.paymentDays+'天内支付运费)'" #distannce3> | <nz-card [nzBorderless]="true" class="mb0" #distannce3> | ||||||
|  |   <div class="font-weight-blod text-md detail-title"> | ||||||
|  |     <a class="sign"></a> | ||||||
|  |     <span>运费信息</span> | ||||||
|  |     <span>(到货后{{i?.paymentDays}}天内支付运费)</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 }} | ||||||
| @ -162,7 +201,11 @@ | |||||||
|     }}/{{ i?.payee?.idNo }}</div> |     }}/{{ i?.payee?.idNo }}</div> | ||||||
| </nz-card> | </nz-card> | ||||||
|  |  | ||||||
| <nz-card nzTitle="附件信息" #distannce4> | <nz-card [nzBorderless]="true" class="mb0" nzTitle="附件信息" #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>      |       <a *ngIf="i?.contractContent?.contractContent" (click)="agreement('1')">查看附件</a>      | ||||||
| @ -180,7 +223,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 ? '是' : '否' }} | ||||||
| @ -196,18 +243,20 @@ | |||||||
|     <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?.supplementaryInformationVO?.remarks }} |       {{ i?.supplementaryInformationVO?.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> | <nz-card [nzBorderless]="true" 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"> | ||||||
|  | |||||||
| @ -22,58 +22,16 @@ | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   .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 { |   .leftPadding { | ||||||
|     padding-right: 100px; |     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; |  | ||||||
|     } |  | ||||||
|   } |  | ||||||
| } | } | ||||||
|  |  | ||||||
| ::ng-deep { | ::ng-deep { | ||||||
|  | |||||||
| @ -58,3 +58,44 @@ | |||||||
|     margin: 0 10px 10px 0; |     margin: 0 10px 10px 0; | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | .handling-col { | ||||||
|  |   min-height: 90px; | ||||||
|  |  | ||||||
|  |   .handling-info { | ||||||
|  |     min-height: 100%; | ||||||
|  |     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; | ||||||
|  |       margin-bottom: 0; | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user