This commit is contained in:
Taric Xin
2022-04-29 17:48:21 +08:00
87 changed files with 786 additions and 611 deletions

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming
* @LastEditTime : 2022-04-08 16:34:26
* @LastEditTime : 2022-04-29 10:41:20
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\abnormal-warning\\abnormal-warning.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -35,25 +35,27 @@
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 异常预警</label>
<div class="mr-sm">
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['ORDER-COMPLIANCE-AUDIT-search']">筛选</button>
<button nz-button nzDanger acl [acl-ability]="['ORDER-COMPLIANCE-AUDIT-export']" (click)="exprot()">导出</button>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
<button nz-button nzDanger acl [acl-ability]="['ORDER-ABNORMAL-export']" (click)="exprot()">导出</button>
</div>
</div>
<div>
<st #st [bordered]="true" [scroll]="{ x: '2000px' ,y:scrollY }" [data]="service.$api_get_abnormalWarning"
<st
#st
[bordered]="true"
[scroll]="{ x: '2000px', y: scrollY }"
[data]="service.$api_get_abnormalWarning"
[columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [loading]="false">
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false"
>
<ng-template st-row="driverName" let-item let-index="index">
<div> {{ item?.driverName }}{{ item?.driverPhone ? "/" + item?.driverPhone : '' }} </div>
<div> {{ item?.driverName }}{{ item?.driverPhone ? '/' + item?.driverPhone : '' }} </div>
</ng-template>
<ng-template st-row="longitude" let-item let-index="index">
<div> {{ item?.longitude }}
{{ item?.latitude ? "," + item?.latitude : '' }} </div>
<div> {{ item?.longitude }} {{ item?.latitude ? ',' + item?.latitude : '' }} </div>
</ng-template>
<ng-template st-row="billCode" let-item let-index="index">
<!-- <a *ngIf="item.billType == '1'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{ item.billCode }}</a>
@ -63,14 +65,11 @@
<span>{{ item?.billStatusLabel }}</span>
</div>
<div>
<span>{{item?.billTypeLabel}}{{item?.serviceTypeLabel === item?.billTypeLabel ?
'':item?.serviceTypeLabel}}</span>
<span>{{ item?.billTypeLabel }}{{ item?.serviceTypeLabel === item?.billTypeLabel ? '' : item?.serviceTypeLabel }}</span>
</div>
</ng-template>
</st>
</div>
</nz-card>
<ng-template #extraTemplate>
</ng-template>
<ng-template #extraTemplate> </ng-template>

View File

@ -219,57 +219,71 @@
<div *ngIf=" i?.payeeId !== i?.driverId" class="mt-xs">车队长:{{ i?.payeeName }}/{{ i?.payeePhone }}/{{ i?.payeeIdNo }}
</div>
</nz-card>
<nz-card [nzBorderless]="true" class="mb0" #distannce4>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>附件信息</span>
<div nz-row>
<div nzSpan="12" nz-col>
<nz-card [nzBorderless]="true" class="mb0 attch-card" #distannce4>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>附件信息</span>
</div>
<div class="attachment-info">
<sv-container col="1">
<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" layout="vertical">
<sv label="装货凭证">
<app-imagelist *ngIf="i?.loadingLadingBillFilePath || i?.loadingPeopleVehiclesGoodsFilePath"
[imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"
[style]="'width:120px;height:120px;'"> </app-imagelist>
</sv>
<sv label="卸货凭证">
<app-imagelist *ngIf="i?.unloadingLadingBillFilePath || i?.unloadingPeopleVehiclesGoodsFilePath "
[imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]"
[style]="'width:120px;height:120px;'"> </app-imagelist>
</sv>
</sv-container>
</div>
</nz-card>
</div>
<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?.loadingLadingBillFilePath || i?.loadingPeopleVehiclesGoodsFilePath"
[imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</sv>
<sv label="卸货凭证">
<app-imagelist *ngIf="i?.unloadingLadingBillFilePath || i?.unloadingPeopleVehiclesGoodsFilePath "
[imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</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 nzSpan="12" nz-col>
<nz-card [nzBorderless]="true" class="mb0 attch-card">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>补充信息</span>
</div>
<div class="attachment-info">
<sv-container col="1">
<sv label="是否回单">
{{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }}
</sv>
<sv label="回单类型" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
{{ i?.supplementaryInformationVO?.receiptType === '1' ? '电子回单' : '纸质回单' }}
</sv>
<ng-container
*ngIf="i?.supplementaryInformationVO?.stateReceipt && i?.supplementaryInformationVO?.receiptType==='2'">
<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>
</ng-container>
<sv label="备注">
{{ i?.goodsResource?.remarks }}
</sv>
<sv col="1" label="回单凭证" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
<app-imagelist [imgList]="i?.receiptFilePath" [style]="'width:120px;height:120px;'"></app-imagelist>
</sv>
</sv-container>
</div>
</nz-card>
</div>
<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 label="备注">
{{ i?.goodsResource?.remarks }}
</sv>
<sv col="1" label="回单凭证" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
<app-imagelist [imgList]="i?.receiptFilePath"></app-imagelist>
</sv>
</sv-container>
</nz-card>
</div>
<nz-card #distannce5 [nzBorderless]="true" class="mb0">
<p class="detail_title"><span>|</span> 轨迹信息</p>

View File

@ -32,38 +32,5 @@
padding-right: 100px;
}
.handling-info {
min-height: 90px;
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;
}
}
}

View File

@ -528,7 +528,7 @@ export class OrderManagementBulkComponent extends BasicTableComponent implements
text: '确认签收',
click: _record => this.confirmReceipt(_record),
iif: item => item.billStatus == '4',
acl: { ability: ['VEHICLE-LIST-view'] }
acl: { ability: ['ORDER-BULK-signBulkOrder'] }
},
{
text: '取消订单',

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming
* @LastEditTime : 2022-04-06 11:06:05
* @LastEditTime : 2022-04-29 10:29:12
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -118,7 +118,7 @@
<div>
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
[acl-ability]="['ORDER-RECEIPTS-search']">筛选</button>
<button nz-button nzDanger [disabled]="false" (click)="exprot()">导出</button>
<button nz-button nzDanger [disabled]="false" (click)="exprot()" acl [acl-ability]="['ORDER-RECEIPTS-export']">导出</button>
<button nz-button nz-dropdown [nzDropdownMenu]="menu" nzPlacement="bottomLeft">
更多<i nz-icon nzType="down" nzTheme="outline"></i></button>
<nz-dropdown-menu #menu="nzDropdownMenu">

View File

@ -194,7 +194,8 @@
<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 }"
[size]="'small'">
<ng-template st-row="price" let-item let-index="index">
{{ item.price | currency }}
</ng-template>
@ -214,58 +215,74 @@
i?.payeePhone : '' }}/{{ i?.payeeIdNo }}</div>
</nz-card>
<nz-card [nzBorderless]="true" class="mb0" #distannce4>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>附件信息</span>
<div nz-row>
<div nzSpan="12" nz-col>
<nz-card [nzBorderless]="true" class="mb0 attch-card" #distannce4>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>附件信息</span>
</div>
<div class="attachment-info">
<sv-container>
<sv label="协议附件" col="1">
<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" layout="vertical">
<sv label="装货凭证">
<app-imagelist *ngIf="i?.loadingLadingBillFilePath|| i?.loadingPeopleVehiclesGoodsFilePath"
[imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"
[style]="'width:120px;height:120px;'">
</app-imagelist>
</sv>
<sv label="卸货凭证">
<app-imagelist *ngIf="i?.unloadingLadingBillFilePath || i?.unloadingPeopleVehiclesGoodsFilePath"
[imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]"
[style]="'width:120px;height:120px;'">
</app-imagelist>
</sv>
</sv-container>
</div>
</nz-card>
</div>
<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 [imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</sv>
<sv label="卸货凭证">
<app-imagelist [imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]">
</app-imagelist>
</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 nzSpan="12" nz-col>
<nz-card [nzBorderless]="true" class="mb0 attch-card">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>补充信息</span>
</div>
<div class="attachment-info">
<sv-container col="1">
<sv label="是否回单">
{{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }}
</sv>
<sv label="回单类型" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
{{ i?.supplementaryInformationVO?.receiptType === '1' ? '电子回单' : '纸质回单' }}
</sv>
<ng-container
*ngIf="i?.supplementaryInformationVO?.stateReceipt && i?.supplementaryInformationVO?.receiptType==='2'">
<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>
</ng-container>
<sv label="备注">
{{ i?.goodsResource?.remarks }}
</sv>
<sv label="回单凭证" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
<app-imagelist [imgList]="i?.receiptFilePath" [style]="'width:120px;height:120px;'"></app-imagelist>
</sv>
</sv-container>
</div>
</nz-card>
</div>
<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?.goodsResource?.remarks }}
</sv>
</sv-container>
</nz-card>
</div>
<nz-card [nzBorderless]="true" class="mb0" #distannce5>
<p class="detail_title"><span>|</span> 轨迹信息</p>

View File

@ -36,44 +36,7 @@
display: none;
}
.handling-col {
min-height: 90px;
.handling-info {
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;
}
}
.target-fix {
display: block;

View File

@ -1,10 +1,10 @@
/*
* @Description :
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-06 09:24:00
* @LastEditors : Shiming
* @LastEditTime : 2022-04-28 20:50:36
* @LastEditTime : 2022-04-29 10:41:21
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\order-management-routing.module.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -25,22 +25,34 @@ import { OrderManagementVehicleDetailComponent } from './components/vehicle-deta
import { OrderManagementVehicleComponent } from './components/vehicle/vehicle.component';
const routes: Routes = [
{ path: 'vehicle', component: OrderManagementVehicleComponent },
{ path: 'vehicle/vehicle-detail/:id', component: OrderManagementVehicleDetailComponent },
{ path: 'vehicle', component: OrderManagementVehicleComponent, data: { guard: { ability: ['ORDER-VEHICLE-search'] } } },
{
path: 'vehicle/vehicle-detail/:id',
component: OrderManagementVehicleDetailComponent,
data: { guard: { ability: ['ORDER-VEHICLE-DETAIL-search'] } }
},
{ path: 'vehicle-detailChange/:id', component: OrderManagementVehicleDetailChangeComponent },
{ path: 'bulk', component: OrderManagementBulkComponent },
{ path: 'bulk/bulk-detail/:id', component: OrderManagementBulkeDetailComponent },
{ path: 'bulk', component: OrderManagementBulkComponent, data: { guard: { ability: ['ORDER-BULK-search'] } } },
{
path: 'bulk/bulk-detail/:id',
component: OrderManagementBulkeDetailComponent,
data: { guard: { ability: ['ORDER-BULK-DETAIL-search'] } }
},
{ path: 'bulk-detailChange/:id', component: OrderManagementBulkDetailChangeComponent },
{ path: 'risk', component: OrderManagementRiskComponent },
{ path: 'risk', component: OrderManagementRiskComponent, data: { guard: { ability: ['ORDER-RISK-search'] } } },
{ path: 'risk-detail/:id', component: OrderManagementRiskDetailComponent },
{ path: 'complaint', component: OrderManagementComplaintComponent },
{ path: 'complaint', component: OrderManagementComplaintComponent, data: { guard: { ability: ['ORDER-COMPLAINT-search'] } } },
{ path: 'complaint-detail/:id', component: OrderManagementComplaintDetailComponent },
{ path: 'receipts-audit', component: OrderManagementReceiptsAuditComponent },
{ path: 'compliance-audit', component: OrderManagementComplianceAuditComponent },
{ path: 'abnormal-warning', component: OrderManagementAbnormalWarningComponent },
]
{ path: 'receipts-audit', component: OrderManagementReceiptsAuditComponent, data: { guard: { ability: ['ORDER-RECEIPTS-search'] } } },
{
path: 'compliance-audit',
component: OrderManagementComplianceAuditComponent,
data: { guard: { ability: ['ORDER-COMPLIANCE-AUDIT-search'] } }
},
{ path: 'abnormal-warning', component: OrderManagementAbnormalWarningComponent, data: { guard: { ability: ['ORDER-ABNORMAL-search'] } } }
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class OrderManagementRoutingModule { }
export class OrderManagementRoutingModule {}