This commit is contained in:
wangshiming
2022-02-15 15:12:38 +08:00
parent 68fd65f6dc
commit 9e2900ad75
11 changed files with 579 additions and 527 deletions

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-06 20:20:26 * @Date : 2021-12-06 20:20:26
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-02-10 14:44:36 * @LastEditTime : 2022-02-15 14:52: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.
--> -->
@ -17,12 +17,24 @@
<ng-template #headerContent> <ng-template #headerContent>
<div class="mb-xs" nz-row> <div class="mb-xs" nz-row>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button> <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button>
<h4 class="ml-md" style="font-size: 18px;">订单号: {{ i?.billCode }}</h4> <h4 class="ml-md" style="font-size: 18px">订单号: {{ i?.billCode }}</h4>
</div> </div>
<div nz-row style="display: flex; justify-content: end;"> <div nz-row style="display: flex; justify-content: end">
<div nz-col nzSpan="10"> <div nz-col nzSpan="10">
<button (click)="cancellation()" nz-button *ngIf="i?.billStatus == '4' || i?.billStatus == '5' || i?.billStatus == '2' || i?.billStatus == '3' || i?.billStatus == '1'" >取消订单</button> <button
<button nz-button *ngIf="i?.billStatus == '4' || i?.billStatus == '5' || i?.billStatus == '2' || i?.billStatus == '3'" (click)="changeOrder()">修改订单</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-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>
</div> </div>
<nz-divider></nz-divider> <nz-divider></nz-divider>
@ -35,17 +47,12 @@
<sv label="录单员">{{ i?.goodsResource?.createUserName }} /{{ i?.goodsResource?.createUserPhone }} </sv> <sv label="录单员">{{ i?.goodsResource?.createUserName }} /{{ i?.goodsResource?.createUserPhone }} </sv>
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv> <sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
</div> </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> <nz-tab nzTitle="基本信息" (nzClick)="goDistance(distannce2)"> </nz-tab>
<nz-tab nzTitle="基本信息" (nzClick)="goDistance(distannce2)"> <nz-tab nzTitle="运费信息" (nzClick)="goDistance(distannce3)"> </nz-tab>
</nz-tab> <nz-tab nzTitle="附件信息" (nzClick)="goDistance(distannce4)"> </nz-tab>
<nz-tab nzTitle="运费信息" (nzClick)="goDistance(distannce3)"> <nz-tab nzTitle="轨迹信息" (nzClick)="goDistance(distannce5)"> </nz-tab>
</nz-tab>
<nz-tab nzTitle="附件信息" (nzClick)="goDistance(distannce4)">
</nz-tab>
<nz-tab nzTitle="轨迹信息" (nzClick)="goDistance(distannce5)">
</nz-tab>
</nz-tabset> </nz-tabset>
</div> </div>
</ng-template> </ng-template>
@ -53,15 +60,19 @@
<nz-card nzTitle="运单进度" #distannce1> <nz-card nzTitle="运单进度" #distannce1>
<div class="approval-status"> <div class="approval-status">
<div style="width: 60%; margin: 0 auto"> <div style="width: 60%; margin: 0 auto">
  <nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical">  
  <nz-step <nz-steps [nzCurrent]="i?.scheduleVOList?.length + 1" nzLabelPlacement="vertical">
          *ngFor="let item of i?.scheduleVOList"  
    [nzTitle]="item.state" <nz-step
    [nzSubtitle]="item.stateTime" *ngFor="let item of i?.scheduleVOList"
    [nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'" [nzTitle]="item.state"
  > [nzSubtitle]="item.stateTime"
  </nz-step> [nzStatus]="item.displayStatus === 'SHOW' ? 'finish' : 'wait'"
 </nz-steps> >
 
</nz-step>
 </nz-steps
>
</div> </div>
</div> </div>
</nz-card> </nz-card>
@ -73,13 +84,9 @@
</sv> </sv>
</sv-container> </sv-container>
<sv-container col="2"> <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 }} </sv> <sv label="用车需求">{{ i?.carModel }}/{{ i?.carLength }} </sv>
<sv label="承运司机"> <sv label="承运司机"> {{ i?.driverName }}/{{ i?.driverPhone }}{{ i?.carNo }} </sv>
{{i?.driverName}}/{{i?.driverPhone}}{{i?.carNo}}
</sv>
<sv label="车型车长载重"> {{ i?.driverCarModelLabel }},{{ i?.driverCarLengthLabel }}米,{{ i?.driverCarWeight }}吨 </sv> <sv label="车型车长载重"> {{ i?.driverCarModelLabel }},{{ i?.driverCarLengthLabel }}米,{{ i?.driverCarWeight }}吨 </sv>
<sv label="计划装货时间"> <sv label="计划装货时间">
{{ i?.loadPlanTime }} {{ i?.loadPlanTime }}
@ -87,19 +94,15 @@
<sv label="计划卸货时间"> <sv label="计划卸货时间">
{{ i?.unloadPlanTime }} {{ i?.unloadPlanTime }}
</sv> </sv>
<sv label="接单数量"> <sv label="接单数量"> {{ i?.acceptWeight }}吨,{{ i?.acceptVolume }}方,{{ i?.acceptNumber }}件 </sv>
{{i?.acceptWeight}}吨,{{i?.acceptVolume}}方,{{i?.acceptNumber}}件 <sv label="装货数量"> {{ i?.acceptWeight }}吨,{{ i?.acceptVolume }}方,{{ i?.acceptNumber }}件 </sv>
</sv> <sv label="卸货数量"> {{ i?.settlementWeight }}吨,{{ i?.settlementVolume }}方,{{ i?.acceptNumber }}件 </sv>
<sv label="装货数量">
{{i?.acceptWeight}}吨,{{i?.acceptVolume}}方,{{i?.acceptNumber}}件
</sv>
<sv label="卸货数量">
{{i?.settlementWeight}}吨,{{i?.settlementVolume}}方,{{i?.acceptNumber}}件
</sv>
</sv-container> </sv-container>
<div class="mt-md"> <div class="mt-md">
<h4 class="text-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>
@ -147,8 +150,7 @@
</st> </st>
<div> <div>
<div> <div>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> 总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | currency }}
(运费{{i?.totalFreight | currency}}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 }}% 附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 }}%
</div> </div>
</div> </div>
@ -165,12 +167,10 @@
</sv-container> </sv-container>
<sv-container col="2" class="mt-md"> <sv-container col="2" class="mt-md">
<sv label="装货凭证"> <sv label="装货凭证">
<app-imagelist [imgList]="[i?.loadingLadingBillFilePath,i?.loadingPeopleVehiclesGoodsFilePath]"> <app-imagelist [imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</app-imagelist>
</sv> </sv>
<sv label="卸货凭证"> <sv label="卸货凭证">
<app-imagelist [imgList]="[i?.unloadingLadingBillFilePath,i?.unloadingPeopleVehiclesGoodsFilePath]"> <app-imagelist [imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</app-imagelist>
</sv> </sv>
</sv-container> </sv-container>
</nz-card> </nz-card>
@ -189,7 +189,6 @@
<sv label="详细地址"> <sv label="详细地址">
{{ i?.supplementaryInformationVO?.address }} {{ i?.supplementaryInformationVO?.address }}
</sv> </sv>
</sv-container> </sv-container>
<sv-container col="1" class="mt-md"> <sv-container col="1" class="mt-md">
<sv label="回单凭证"> <sv label="回单凭证">
@ -203,13 +202,13 @@
<nz-card> <nz-card>
<div nz-row> <div nz-row>
<nz-card nzTitle="轨迹信息" style="width: 100%;" #distannce5> <nz-card nzTitle="轨迹信息" style="width: 100%" #distannce5>
<div nz-row> <div nz-row>
<div nz-col [nzSpan]='12'> <div nz-col [nzSpan]="12">
<!-- <st #st [data]="i?.auditRecordList" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> <!-- <st #st [data]="i?.auditRecordList" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
</st> --> </st> -->
</div> </div>
<div nz-col [nzSpan]='12'> <div nz-col [nzSpan]="12">
<amap-path-simplifier></amap-path-simplifier> <amap-path-simplifier></amap-path-simplifier>
</div> </div>
</div> </div>

View File

@ -9,14 +9,21 @@
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
<!-- 搜索表单 --> <!-- 搜索表单 -->
<page-header-wrapper [title]="''"> <page-header-wrapper [title]="''"> </page-header-wrapper>
</page-header-wrapper>
<nz-card> <nz-card>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 --> <!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4"> <div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf #sf [schema]="schema" [ui]="ui" [mode]="'search'" [disabled]="!sf?.valid" [loading]="service.http.loading" <sf
(formSubmit)="st?.load(1)" (formReset)="resetSF()"></sf> #sf
[schema]="schema"
[ui]="ui"
[mode]="'search'"
[disabled]="!sf?.valid"
[loading]="service.http.loading"
(formSubmit)="st?.load(1)"
(formReset)="resetSF()"
></sf>
</div> </div>
<!-- 查询字段大于3个时根据展开状态调整布局 --> <!-- 查询字段大于3个时根据展开状态调整布局 -->
@ -25,10 +32,10 @@
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf> <sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
</div> </div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand"> <div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="search()" acl [acl-ability]="['ORDER-BULK-search']"
(click)="search()">查询</button> >查询</button
<button nz-button nzType="primary" [disabled]="service.http.loading" >
>导出</button> <button nz-button nzType="primary" [disabled]="service.http.loading">导出</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -40,8 +47,7 @@
</nz-card> </nz-card>
<nz-card> <nz-card>
<nz-tabset (nzSelectedIndexChange)="selectChange($event)" <nz-tabset (nzSelectedIndexChange)="selectChange($event)" [nzTabBarExtraContent]="extraTemplate">
[nzTabBarExtraContent]="extraTemplate">
<nz-tab [nzTitle]="'全部(' + tabs?.totalCount + ')'"></nz-tab> <nz-tab [nzTitle]="'全部(' + tabs?.totalCount + ')'"></nz-tab>
<nz-tab [nzTitle]="'待接单(' + tabs?.receivedQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'待接单(' + tabs?.receivedQuantity + ')'"></nz-tab>
<nz-tab [nzTitle]="'待发车(' + tabs?.stayQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'待发车(' + tabs?.stayQuantity + ')'"></nz-tab>
@ -50,7 +56,7 @@
<nz-tab [nzTitle]="'已完成(' + tabs?.compolatelQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'已完成(' + tabs?.compolatelQuantity + ')'"></nz-tab>
<nz-tab [nzTitle]="'已取消(' + tabs?.cancelQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'已取消(' + tabs?.cancelQuantity + ')'"></nz-tab>
</nz-tabset> </nz-tabset>
<div style="margin-top: 15px;"> <div style="margin-top: 15px">
<st <st
#st #st
[bordered]="true" [bordered]="true"
@ -70,14 +76,10 @@
<div *ngIf="item?.unloadPlanTime">卸 | {{ item?.unloadPlanTime }}</div> <div *ngIf="item?.unloadPlanTime">卸 | {{ item?.unloadPlanTime }}</div>
</ng-template> </ng-template>
<ng-template st-row="driverName" let-item let-index="index"> <ng-template st-row="driverName" let-item let-index="index">
<div> <div> {{ item?.driverName }}/{{ item?.driverPhone }}/{{ item?.carNo }} </div>
{{item?.driverName}}/{{item?.driverPhone}}/{{item?.carNo}}
</div>
</ng-template> </ng-template>
<ng-template st-row="payeeName" let-item let-index="index"> <ng-template st-row="payeeName" let-item let-index="index">
<div> <div> {{ item?.payeeName }}/{{ item?.payeePhone }} </div>
{{item?.payeeName}}/{{item?.payeePhone}}
</div>
</ng-template> </ng-template>
<ng-template st-row="billCode" let-item let-index="index"> <ng-template st-row="billCode" let-item let-index="index">
<a [routerLink]="'bulk-detail/' + item.id">{{ item.billCode }}</a> <a [routerLink]="'bulk-detail/' + item.id">{{ item.billCode }}</a>
@ -122,8 +124,14 @@
</div> </div>
</nz-card> </nz-card>
<nz-modal
<nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooter" nzTitle="运费变更记录" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel('0')"> [(nzVisible)]="isVisible"
[nzWidth]="600"
[nzFooter]="nzModalFooter"
nzTitle="运费变更记录"
(nzOnOk)="handleOK()"
(nzOnCancel)="handleCancel('0')"
>
<ng-container *nzModalContent> <ng-container *nzModalContent>
<st <st
#stFloat #stFloat
@ -135,7 +143,6 @@
[res]="{ reName: { list: 'data', total: 'data.total' } }" [res]="{ reName: { list: 'data', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
> >
<ng-template st-row="order" let-item let-index="index"> <ng-template st-row="order" let-item let-index="index">
{{ index + 1 }} {{ index + 1 }}
</ng-template> </ng-template>
@ -155,12 +162,18 @@
</ng-template> </ng-template>
</nz-modal> </nz-modal>
<nz-modal
<nz-modal [(nzVisible)]="isVisibleView" [nzWidth]="600" [nzFooter]="nzModalFooterview" nzTitle="查看" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel('1')"> [(nzVisible)]="isVisibleView"
[nzWidth]="600"
[nzFooter]="nzModalFooterview"
nzTitle="查看"
(nzOnOk)="handleOK()"
(nzOnCancel)="handleCancel('1')"
>
<ng-container *nzModalContent> <ng-container *nzModalContent>
<sf #sfView [schema]="schemaView" [ui]="uiView" [formData]="ViewCause" [compact]="true" [button]="'none'"> <sf #sfView [schema]="schemaView" [ui]="uiView" [formData]="ViewCause" [compact]="true" [button]="'none'">
<ng-template sf-template="no" let-me let-ui="uiView" let-schema="schemaView"> <ng-template sf-template="no" let-me let-ui="uiView" let-schema="schemaView">
<div style="display: flex;"> <div style="display: flex">
<nz-input-number [(ngModel)]="demoValue" [nzMin]="1" [nzMax]="10" [nzStep]="1"></nz-input-number> <nz-input-number [(ngModel)]="demoValue" [nzMin]="1" [nzMax]="10" [nzStep]="1"></nz-input-number>
<div class="left_btn">元/吨</div> <div class="left_btn">元/吨</div>
</div> </div>
@ -176,19 +189,20 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeViewParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeViewParams }"
[res]="{ reName: { list: 'data.list', total: 'data.total' } }" [res]="{ reName: { list: 'data.list', total: 'data.total' } }"
> >
<ng-template st-row="amountBeforeChange" let-item let-index="index"> <ng-template st-row="amountBeforeChange" let-item let-index="index">
{{ item.amountBeforeChange | currency }} {{ item.amountBeforeChange | currency }}
</ng-template> </ng-template>
<ng-template st-row="amountchangeValue" let-item let-index="index"> <ng-template st-row="amountchangeValue" let-item let-index="index"> ¥{{ item.amountchangeValue | number: '0.2-2' }} </ng-template>
¥{{ item.amountchangeValue | number: '0.2-2'}}
</ng-template>
<ng-template st-row="amountAfterChange" let-item let-index="index"> <ng-template st-row="amountAfterChange" let-item let-index="index">
{{ item.amountAfterChange | currency }} {{ item.amountAfterChange | currency }}
</ng-template> </ng-template>
</st> </st>
<div><span>变更原因:{{ViewCause?.changeCause}}</span></div> <div
<div><span>拒绝原因:{{ViewCause?.refuseCause}}</span></div> ><span>变更原因:{{ ViewCause?.changeCause }}</span></div
>
<div
><span>拒绝原因:{{ ViewCause?.refuseCause }}</span></div
>
<div><span>注:附加费依据调整后的运输费用重新计算</span></div> <div><span>注:附加费依据调整后的运输费用重新计算</span></div>
</ng-container> </ng-container>
<ng-template #nzModalFooterview> <ng-template #nzModalFooterview>
@ -197,7 +211,13 @@
</ng-template> </ng-template>
</nz-modal> </nz-modal>
<nz-modal [(nzVisible)]="isVisibleEvaluate" [nzWidth]="600" [nzFooter]="nzModalFooterEvaluate" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel('2')"> <nz-modal
[(nzVisible)]="isVisibleEvaluate"
[nzWidth]="600"
[nzFooter]="nzModalFooterEvaluate"
(nzOnOk)="handleOK()"
(nzOnCancel)="handleCancel('2')"
>
<ng-container *nzModalContent> <ng-container *nzModalContent>
<nz-tabset> <nz-tabset>
<nz-tab nzTitle="货主评价"> <nz-tab nzTitle="货主评价">
@ -226,17 +246,25 @@
<ng-template #enable> <ng-template #enable>
<div class="ant-popover-message"> <div class="ant-popover-message">
<i nz-icon nzType="info-circle" nzTheme="fill"></i> <i nz-icon nzType="info-circle" nzTheme="fill"></i>
<div class="ant-popover-message-title ng-star-inserted self-ant-popover-title" style="font-size: 16px">已选择{{selectedRows?.length || 0}}条订单,确认批量签收吗? <div class="ant-popover-message-title ng-star-inserted self-ant-popover-title" style="font-size: 16px"
</div> >已选择{{ selectedRows?.length || 0 }}条订单,确认批量签收吗?
<div class="ant-popover-message-title ng-star-inserted">
签收后不可再修改运费,请确保运费等信息准确无误后,再进行签收。
</div> </div>
<div class="ant-popover-message-title ng-star-inserted"> 签收后不可再修改运费,请确保运费等信息准确无误后,再进行签收。 </div>
</div> </div>
</ng-template> </ng-template>
<ng-template #extraTemplate> <ng-template #extraTemplate>
<div> <div>
<button nz-button nzType="primary" nzGhost nz-popconfirm <button
[nzPopconfirmTitle]="enable" (nzOnConfirm)="userAction()" nzPopconfirmPlacement="bottomRight"> nz-button
nzType="primary"
nzGhost
nz-popconfirm
[nzPopconfirmTitle]="enable"
(nzOnConfirm)="userAction()"
nzPopconfirmPlacement="bottomRight"
acl
[acl-ability]="['ORDER-BULK-batchSignBulkOrder']"
>
批量签收 批量签收
</button> </button>
</div> </div>

View File

@ -115,7 +115,7 @@ export class OrderManagementBulkComponent implements OnInit {
totalCount: 0 totalCount: 0
}; };
const params: any = Object.assign({}, this.reqParams || {}); const params: any = Object.assign({}, this.reqParams || {});
delete params.billStatus delete params.billStatus;
this.service.request(this.service.$api_getBulkStatistical, params).subscribe(res => { this.service.request(this.service.$api_getBulkStatistical, params).subscribe(res => {
if (res) { if (res) {
let totalCount = 0; let totalCount = 0;
@ -463,33 +463,39 @@ export class OrderManagementBulkComponent implements OnInit {
text: '运费变更记录', text: '运费变更记录',
click: _record => this.OpenPrice(_record), click: _record => this.OpenPrice(_record),
iif: item => iif: item =>
item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '6' item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '6',
acl: { ability: ['ORDER-BULK-listChangeApply'] },
}, },
{ {
text: '查看评价 ', text: '查看评价 ',
click: _record => this.viewEvaluate(_record), click: _record => this.viewEvaluate(_record),
iif: item => item.billStatus == '5' iif: item => item.billStatus == '5',
acl: { ability: ['ORDER-BULK-evaluation'] },
}, },
{ {
text: '变更运费 ', text: '变更运费 ',
click: _record => this.updateFreight(_record), click: _record => this.updateFreight(_record),
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2' iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
acl: { ability: ['ORDER-BULK-FreightChangeBulkDetail'] },
}, },
{ {
text: '确认签收 ', text: '确认签收 ',
click: _record => this.confirmReceipt(_record), click: _record => this.confirmReceipt(_record),
iif: item => item.billStatus == '4' iif: item => item.billStatus == '4',
acl: { ability: ['VEHICLE-LIST-view'] },
}, },
{ {
text: '取消订单 ', text: '取消订单 ',
click: _record => this.cancellation(_record), click: _record => this.cancellation(_record),
iif: item => iif: item =>
item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '1' item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '1',
acl: { ability: ['ORDER-BULK-signBulkOrder'] },
}, },
{ {
text: '修改订单 ', text: '修改订单 ',
click: _record => this.changeOrder(_record), click: _record => this.changeOrder(_record),
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3',
acl: { ability: ['ORDER-BULK-BulkBillDetail'] },
} }
] ]
} }
@ -625,24 +631,24 @@ export class OrderManagementBulkComponent implements OnInit {
*查看评价 *查看评价
*/ */
viewEvaluate(item: any) { viewEvaluate(item: any) {
console.log(item) console.log(item);
this.isVisibleEvaluate = true this.isVisibleEvaluate = true;
const params = { const params = {
businessCode: item.billCode, businessCode: item.billCode,
evaluateUserId: item.shipperAppUserId, evaluateUserId: item.shipperAppUserId
} };
const params2 = { const params2 = {
businessCode: item.billCode, businessCode: item.billCode,
passiveUserId: item.shipperAppUserId, passiveUserId: item.shipperAppUserId
} };
this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => { this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => {
console.log(res) console.log(res);
console.log(res.evaluateInfos) console.log(res.evaluateInfos);
this.shipList = res.evaluateInfos this.shipList = res.evaluateInfos;
}); });
this.service.request(this.service.$api_getBillEvaluateDriverByShipper, params2).subscribe(res => { this.service.request(this.service.$api_getBillEvaluateDriverByShipper, params2).subscribe(res => {
console.log(res) console.log(res);
this.diverList = res.evaluateInfos this.diverList = res.evaluateInfos;
}); });
} }
/** /**
@ -686,8 +692,8 @@ export class OrderManagementBulkComponent implements OnInit {
} }
userAction() { userAction() {
if (this.selectedRows.length <= 0) { if (this.selectedRows.length <= 0) {
this.service.msgSrv.error('请选择订单!') this.service.msgSrv.error('请选择订单!');
return return;
} }
let params: any[] = []; let params: any[] = [];
this.selectedRows.forEach(item => { this.selectedRows.forEach(item => {

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-12 10:52:50 * @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-24 15:40:10 * @LastEditTime : 2022-02-15 15:03:39
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -91,7 +91,7 @@
<span>{{item?.serviceTypeName}}</span> <span>{{item?.serviceTypeName}}</span>
</div> </div>
<div> <div>
<span>{{item?.billStatusLabel}}</span> <span>{{item?.auditStatusLabel}}</span>
</div> </div>
</ng-template> </ng-template>
<ng-template st-row="goodsName" let-item let-index="index"> <ng-template st-row="goodsName" let-item let-index="index">

View File

@ -335,17 +335,22 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
{ {
text: '通过', text: '通过',
click: _record => this.sign(_record), click: _record => this.sign(_record),
// iif: item => item.billStatus == '5' iif: item => item.auditStatus == '1'
}, },
{ {
text: '生成电子单据', text: '生成电子单据',
click: _record => this.generate(_record), click: _record => this.generate(_record, 2),
// iif: item => item.billStatus == '4' iif: item => item.auditStatus == '1'
},
{
text: '查看凭证',
click: _record => this.generate(_record, 3),
iif: item => item.auditStatus == '2'
}, },
{ {
text: '修改', text: '修改',
click: _record => this.modification(_record), click: _record => this.modification(_record),
// iif: item => item.billStatus == '4' iif: item => item.auditStatus == '1'
}, },
] ]
} }
@ -404,14 +409,14 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
}); });
} }
// 生成电子单据 // 生成电子单据
generate(item: any) { generate(item: any, sts?: number) {
const modalRef = this.modal.create({ const modalRef = this.modal.create({
nzTitle: '查看凭证', nzTitle: '查看凭证',
nzWidth: '50%', nzWidth: '50%',
nzContent: orderManagementVoucherViewComponent, nzContent: orderManagementVoucherViewComponent,
nzComponentParams: { nzComponentParams: {
i: item, i: item,
Status: 2 Status: sts
}, },
nzFooter: null nzFooter: null
}); });

View File

@ -9,14 +9,21 @@
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
<!-- 搜索表单 --> <!-- 搜索表单 -->
<page-header-wrapper [title]="''"> <page-header-wrapper [title]="''"> </page-header-wrapper>
</page-header-wrapper>
<nz-card> <nz-card>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 --> <!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4"> <div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf #sf [schema]="schema" [ui]="ui" [mode]="'search'" [disabled]="!sf?.valid" [loading]="service.http.loading" <sf
(formSubmit)="search()" (formReset)="resetSF()"></sf> #sf
[schema]="schema"
[ui]="ui"
[mode]="'search'"
[disabled]="!sf?.valid"
[loading]="service.http.loading"
(formSubmit)="search()"
(formReset)="resetSF()"
></sf>
</div> </div>
<!-- 查询字段大于3个时根据展开状态调整布局 --> <!-- 查询字段大于3个时根据展开状态调整布局 -->
@ -25,10 +32,8 @@
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf> <sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
</div> </div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" class="text-right"> <div nz-col [nzSpan]="_$expand ? 24 : 6" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="search()" acl [acl-ability]="['ORDER-RISK-search']">查询</button>
(click)="search()">查询</button> <button nz-button nzType="primary" [disabled]="service.http.loading">导出</button>
<button nz-button nzType="primary" [disabled]="service.http.loading"
>导出</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -40,15 +45,14 @@
</nz-card> </nz-card>
<nz-card> <nz-card>
<nz-tabset (nzSelectedIndexChange)="selectChange($event)" <nz-tabset (nzSelectedIndexChange)="selectChange($event)" [nzTabBarExtraContent]="extraTemplate">
[nzTabBarExtraContent]="extraTemplate">
<nz-tab [nzTitle]="'全部'"></nz-tab> <nz-tab [nzTitle]="'全部'"></nz-tab>
<nz-tab [nzTitle]="'待申诉(' + tabs?.stayQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'待申诉(' + tabs?.stayQuantity + ')'"></nz-tab>
<nz-tab [nzTitle]="'申诉中(' + tabs?.underwayQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'申诉中(' + tabs?.underwayQuantity + ')'"></nz-tab>
<nz-tab [nzTitle]="'申诉成功(' + tabs?.receivedQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'申诉成功(' + tabs?.receivedQuantity + ')'"></nz-tab>
<nz-tab [nzTitle]="'申诉失败(' + tabs?.cancelQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'申诉失败(' + tabs?.cancelQuantity + ')'"></nz-tab>
</nz-tabset> </nz-tabset>
<div style="margin-top: 15px;"> <div style="margin-top: 15px">
<st <st
#st #st
[bordered]="true" [bordered]="true"
@ -69,20 +73,14 @@
<p>卸货时间:{{ item?.unloadTime }}</p> <p>卸货时间:{{ item?.unloadTime }}</p>
</ng-template> </ng-template>
<ng-template st-row="driverName" let-item let-index="index"> <ng-template st-row="driverName" let-item let-index="index">
<div> <div> {{ item?.driverName }}/{{ item?.driverPhoneNumber }} </div>
{{item?.driverName}}/{{item?.driverPhoneNumber}}
</div>
</ng-template> </ng-template>
<ng-template st-row="payeeName" let-item let-index="index"> <ng-template st-row="payeeName" let-item let-index="index">
<div> <div> {{ item?.payeeName }}/{{ item?.payeePhoneNumber }} </div>
{{item?.payeeName}}/{{item?.payeePhoneNumber}}
</div>
</ng-template> </ng-template>
<ng-template st-row="freightDetails" let-item let-index="index"> <ng-template st-row="freightDetails" let-item let-index="index">
<div *ngIf="item.freightDetails.length > 0"> <div *ngIf="item.freightDetails.length > 0">
<p *ngFor="let data of item.freightDetails"> <p *ngFor="let data of item.freightDetails"> {{ data.expenseName }}{{ data.price | currency }} </p>
{{ data.expenseName }}{{ data.price | currency }}
</p>
</div> </div>
</ng-template> </ng-template>
<ng-template st-row="goodsInfoVOList" let-item let-index="index"> <ng-template st-row="goodsInfoVOList" let-item let-index="index">
@ -96,10 +94,16 @@
</div> </div>
</nz-card> </nz-card>
<nz-modal [(nzVisible)]="isVisibleRE" [nzWidth]="600" [nzFooter]="nzModalFooterview2" (nzOnOk)="handleOK()" nzTitle="审核" (nzOnCancel)="handleCancel()"> <nz-modal
[(nzVisible)]="isVisibleRE"
[nzWidth]="600"
[nzFooter]="nzModalFooterview2"
(nzOnOk)="handleOK()"
nzTitle="审核"
(nzOnCancel)="handleCancel()"
>
<ng-container *nzModalContent> <ng-container *nzModalContent>
<sf #sfView [schema]="schemaView" [ui]="uiView" [compact]="true" [button]="'none'"> <sf #sfView [schema]="schemaView" [ui]="uiView" [compact]="true" [button]="'none'"> </sf>
</sf>
</ng-container> </ng-container>
<ng-template #nzModalFooterview2> <ng-template #nzModalFooterview2>
<button nz-button nzType="default" (click)="reject()">拒绝</button> <button nz-button nzType="default" (click)="reject()">拒绝</button>
@ -109,10 +113,6 @@
<ng-template #extraTemplate> <ng-template #extraTemplate>
<div> <div>
<button nz-button nzType="primary" (click)="audit()"> <button nz-button nzType="primary" (click)="audit()" acl [acl-ability]="['ORDER-RISK-batchAudit']"> 批量审核 </button>
批量审核
</button>
</div> </div>
</ng-template> </ng-template>

View File

@ -308,10 +308,12 @@ export class OrderManagementRiskComponent implements OnInit {
text: '审核', text: '审核',
click: _record => this.audit(_record), click: _record => this.audit(_record),
iif: item => item.representationsStatus == '1' || item.representationsStatus == '2' , iif: item => item.representationsStatus == '1' || item.representationsStatus == '2' ,
acl: { ability: ['ORDER-RISK-audit'] },
}, },
{ {
text: '详情 ', text: '详情 ',
click: _record => this.viewEvaluate(_record), click: _record => this.viewEvaluate(_record),
acl: { ability: ['ORDER-RISK-riskDetail'] },
} }
] ]
} }

View File

@ -17,12 +17,24 @@
<ng-template #headerContent> <ng-template #headerContent>
<div class="mb-xs" nz-row> <div class="mb-xs" nz-row>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button> <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.billStatusLabel }}</button>
<h4 class="ml-md" style="font-size: 18px;">订单号: {{ i?.billCode }}</h4> <h4 class="ml-md" style="font-size: 18px">订单号: {{ i?.billCode }}</h4>
</div> </div>
<div nz-row style="display: flex; justify-content: end;"> <div nz-row style="display: flex; justify-content: end">
<div nz-col nzSpan="10"> <div nz-col nzSpan="10">
<button (click)="cancellation()" nz-button *ngIf="i.billStatus == '4' || i.billStatus == '5' || i.billStatus == '2' || i.billStatus == '3' || i.billStatus == '1'">取消订单</button> <button
<button nz-button (click)="changeOrder()" *ngIf="i.billStatus == '4' || i.billStatus == '5' || i.billStatus == '2' || i.billStatus == '3'" >修改订单</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>
</div> </div>
<nz-divider></nz-divider> <nz-divider></nz-divider>
@ -36,30 +48,32 @@
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv> <sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
</div> </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> <nz-tab nzTitle="基本信息" (nzClick)="goDistance(distannce2)"> </nz-tab>
<nz-tab nzTitle="基本信息" (nzClick)="goDistance(distannce2)"> <nz-tab nzTitle="运费信息" (nzClick)="goDistance(distannce3)"> </nz-tab>
</nz-tab> <nz-tab nzTitle="附件信息" (nzClick)="goDistance(distannce4)"> </nz-tab>
<nz-tab nzTitle="运费信息" (nzClick)="goDistance(distannce3)"> <nz-tab nzTitle="轨迹信息" (nzClick)="goDistance(distannce5)"> </nz-tab>
</nz-tab>
<nz-tab nzTitle="附件信息" (nzClick)="goDistance(distannce4)">
</nz-tab>
<nz-tab nzTitle="轨迹信息" (nzClick)="goDistance(distannce5)">
</nz-tab>
</nz-tabset> </nz-tabset>
</div> </div>
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card nzTitle="运单进度" #distannce1> <nz-card nzTitle="运单进度" #distannce1>
<div class="approval-status"> <div class="approval-status">
<div style="width: 60%; margin: 0 auto"> <div style="width: 60%; margin: 0 auto">
  <nz-steps [nzCurrent]="approvalLsit?.length + 1" nzLabelPlacement="vertical">  
  <nz-step     *ngFor="let item of approvalLsit"     [nzTitle]="item?.state"     [nzSubtitle]="item?.stateTime" <nz-steps [nzCurrent]="approvalLsit?.length + 1" nzLabelPlacement="vertical">
    [nzStatus]="item?.displayStatus === 'SHOW' ? 'finish' : 'wait'"  >  
  </nz-step> <nz-step
 </nz-steps> *ngFor="let item of approvalLsit"
[nzTitle]="item?.state"
[nzSubtitle]="item?.stateTime"
[nzStatus]="item?.displayStatus === 'SHOW' ? 'finish' : 'wait'"
>
 
</nz-step>
 </nz-steps
>
</div> </div>
</div> </div>
</nz-card> </nz-card>
@ -75,18 +89,16 @@
</sv> </sv>
</sv-container> </sv-container>
<sv-container col="2"> <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 }} </sv> <sv label="用车需求">{{ i?.carModel }}/{{ i?.carLength }} </sv>
<sv label="承运司机"> <sv label="承运司机"> {{ i?.driverName }}/{{ i?.driverPhone }}/{{ i?.carNo }} </sv>
{{i?.driverName}}/{{i?.driverPhone}}/{{i?.carNo}}
</sv>
<sv label="车型车长载重"> {{ i?.driverCarModelLabel }},{{ i?.driverCarLengthLabel }}米,{{ i?.driverCarWeight }}吨 </sv> <sv label="车型车长载重"> {{ i?.driverCarModelLabel }},{{ i?.driverCarLengthLabel }}米,{{ i?.driverCarWeight }}吨 </sv>
</sv-container> </sv-container>
<div class="mt-md"> <div class="mt-md">
<h4 class="text-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>
) )
@ -124,8 +136,7 @@
</div> </div>
</div> </div>
</nz-card> </nz-card>
<nz-card nzTitle="保险待定"> <nz-card nzTitle="保险待定"> </nz-card>
</nz-card>
<nz-card nzTitle="运费信息" #distannce3> <nz-card nzTitle="运费信息" #distannce3>
<st #st [data]="i?.billExpenseDetails" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> <st #st [data]="i?.billExpenseDetails" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
@ -137,8 +148,7 @@
</ng-template> </ng-template>
</st> </st>
<div> <div>
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> 总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | currency }}
(运费{{i?.totalFreight | currency}}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 }}% 附加费{{ i?.totalSurcharge | currency }},附加费率{{ i?.totalRate * 100 }}%
</div> </div>
<div>收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}</div> <div>收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}</div>
@ -154,12 +164,10 @@
</sv-container> </sv-container>
<sv-container col="2" class="mt-md"> <sv-container col="2" class="mt-md">
<sv label="装货凭证"> <sv label="装货凭证">
<app-imagelist [imgList]="[i?.loadingLadingBillFilePath,i?.loadingPeopleVehiclesGoodsFilePath]"> <app-imagelist [imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</app-imagelist>
</sv> </sv>
<sv label="卸货凭证"> <sv label="卸货凭证">
<app-imagelist [imgList]="[i?.unloadingLadingBillFilePath,i?.unloadingPeopleVehiclesGoodsFilePath]"> <app-imagelist [imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
</app-imagelist>
</sv> </sv>
</sv-container> </sv-container>
</nz-card> </nz-card>
@ -178,7 +186,6 @@
<sv label="详细地址"> <sv label="详细地址">
{{ i?.supplementaryInformationVO?.address }} {{ i?.supplementaryInformationVO?.address }}
</sv> </sv>
</sv-container> </sv-container>
<sv-container col="1" class="mt-md"> <sv-container col="1" class="mt-md">
<sv label="回单凭证"> <sv label="回单凭证">
@ -192,13 +199,13 @@
<nz-card> <nz-card>
<div nz-row> <div nz-row>
<nz-card nzTitle="轨迹信息" style="width: 100%;" id="distannce5" #distannce5> <nz-card nzTitle="轨迹信息" style="width: 100%" id="distannce5" #distannce5>
<div nz-row> <div nz-row>
<div nz-col [nzSpan]='12'> <div nz-col [nzSpan]="12">
<!-- <st #st [data]="i?.auditRecordList" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }"> <!-- <st #st [data]="i?.auditRecordList" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
</st> --> </st> -->
</div> </div>
<div nz-col [nzSpan]='12'> <div nz-col [nzSpan]="12">
<amap-path-simplifier></amap-path-simplifier> <amap-path-simplifier></amap-path-simplifier>
</div> </div>
</div> </div>
@ -206,8 +213,7 @@
</div> </div>
</nz-card> </nz-card>
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" <nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
(nzOnCancel)="handleCancel()">
<ng-container *nzModalContent> <ng-container *nzModalContent>
<app-imagelist [imgList]="imges"></app-imagelist> <app-imagelist [imgList]="imges"></app-imagelist>
</ng-container> </ng-container>

View File

@ -9,14 +9,21 @@
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
<!-- 搜索表单 --> <!-- 搜索表单 -->
<page-header-wrapper [title]="''"> <page-header-wrapper [title]="''"> </page-header-wrapper>
</page-header-wrapper>
<nz-card> <nz-card>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 --> <!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4"> <div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf #sf [schema]="schema" [ui]="ui" [mode]="'search'" [disabled]="!sf?.valid" [loading]="service.http.loading" <sf
(formSubmit)="st?.load(1)" (formReset)="resetSF()"></sf> #sf
[schema]="schema"
[ui]="ui"
[mode]="'search'"
[disabled]="!sf?.valid"
[loading]="service.http.loading"
(formSubmit)="st?.load(1)"
(formReset)="resetSF()"
></sf>
</div> </div>
<!-- 查询字段大于3个时根据展开状态调整布局 --> <!-- 查询字段大于3个时根据展开状态调整布局 -->
@ -25,10 +32,8 @@
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf> <sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
</div> </div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" class="text-right"> <div nz-col [nzSpan]="_$expand ? 24 : 6" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="search()" acl [acl-ability]="['ORDER-VEHICLE-search']">查询</button>
(click)="search()">查询</button> <button nz-button nzType="primary" [disabled]="service.http.loading">导出</button>
<button nz-button nzType="primary" [disabled]="service.http.loading"
>导出</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -40,8 +45,7 @@
</nz-card> </nz-card>
<nz-card> <nz-card>
<nz-tabset (nzSelectedIndexChange)="selectChange($event)" <nz-tabset (nzSelectedIndexChange)="selectChange($event)" [nzTabBarExtraContent]="extraTemplate">
[nzTabBarExtraContent]="extraTemplate">
<nz-tab [nzTitle]="'全部(' + tabs?.totalCount + ')'"></nz-tab> <nz-tab [nzTitle]="'全部(' + tabs?.totalCount + ')'"></nz-tab>
<nz-tab [nzTitle]="'待接单(' + tabs?.receivedQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'待接单(' + tabs?.receivedQuantity + ')'"></nz-tab>
<nz-tab [nzTitle]="'待发车(' + tabs?.stayQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'待发车(' + tabs?.stayQuantity + ')'"></nz-tab>
@ -50,7 +54,7 @@
<nz-tab [nzTitle]="'已完成(' + tabs?.compolatelQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'已完成(' + tabs?.compolatelQuantity + ')'"></nz-tab>
<nz-tab [nzTitle]="'已取消(' + tabs?.cancelQuantity + ')'"></nz-tab> <nz-tab [nzTitle]="'已取消(' + tabs?.cancelQuantity + ')'"></nz-tab>
</nz-tabset> </nz-tabset>
<div style="margin-top: 15px;"> <div style="margin-top: 15px">
<st <st
#st #st
[bordered]="true" [bordered]="true"
@ -61,7 +65,6 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
> >
<ng-template st-row="billCode" let-item let-index="index"> <ng-template st-row="billCode" let-item let-index="index">
<a [routerLink]="'vehicle-detail/' + item.id">{{ item.billCode }}</a> <a [routerLink]="'vehicle-detail/' + item.id">{{ item.billCode }}</a>
@ -100,14 +103,10 @@
</div> </div>
</ng-template> </ng-template>
<ng-template st-row="driverName" let-item let-index="index"> <ng-template st-row="driverName" let-item let-index="index">
<div> <div> {{ item?.driverName }}/{{ item?.driverPhone }}/{{ item?.carNo }} </div>
{{item?.driverName}}/{{item?.driverPhone}}/{{item?.carNo}}
</div>
</ng-template> </ng-template>
<ng-template st-row="payeeName" let-item let-index="index"> <ng-template st-row="payeeName" let-item let-index="index">
<div> <div> {{ item?.payeeName }}/{{ item?.payeePhone }} </div>
{{item?.payeeName}}/{{item?.payeePhone}}
</div>
</ng-template> </ng-template>
<ng-template st-row="loadingTime" let-item let-index="index"> <ng-template st-row="loadingTime" let-item let-index="index">
<div *ngIf="item?.loadingTime">装 | {{ item?.loadingTime }}</div> <div *ngIf="item?.loadingTime">装 | {{ item?.loadingTime }}</div>
@ -117,7 +116,6 @@
</div> </div>
</nz-card> </nz-card>
<nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooter" nzTitle="运费变更记录" (nzOnCancel)="handleCancel('0')"> <nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooter" nzTitle="运费变更记录" (nzOnCancel)="handleCancel('0')">
<ng-container *nzModalContent> <ng-container *nzModalContent>
<st <st
@ -129,7 +127,6 @@
[columns]="columnsFloat" [columns]="columnsFloat"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeParams }"
[res]="{ reName: { list: 'data', total: 'data.total' } }" [res]="{ reName: { list: 'data', total: 'data.total' } }"
> >
<ng-template st-row="order" let-item let-index="index"> <ng-template st-row="order" let-item let-index="index">
{{ index + 1 }} {{ index + 1 }}
@ -142,7 +139,6 @@
</ng-template> </ng-template>
</nz-modal> </nz-modal>
<nz-modal [(nzVisible)]="isVisibleView" [nzWidth]="600" [nzFooter]="nzModalFooterview" nzTitle="查看" (nzOnCancel)="handleCancel('1')"> <nz-modal [(nzVisible)]="isVisibleView" [nzWidth]="600" [nzFooter]="nzModalFooterview" nzTitle="查看" (nzOnCancel)="handleCancel('1')">
<ng-container *nzModalContent> <ng-container *nzModalContent>
<st <st
@ -157,15 +153,17 @@
<ng-template st-row="amountBeforeChange" let-item let-index="index"> <ng-template st-row="amountBeforeChange" let-item let-index="index">
{{ item.amountBeforeChange | currency }} {{ item.amountBeforeChange | currency }}
</ng-template> </ng-template>
<ng-template st-row="amountchangeValue" let-item let-index="index"> <ng-template st-row="amountchangeValue" let-item let-index="index"> ¥{{ item.amountchangeValue | number: '0.2-2' }} </ng-template>
¥{{ item.amountchangeValue | number: '0.2-2'}}
</ng-template>
<ng-template st-row="amountAfterChange" let-item let-index="index"> <ng-template st-row="amountAfterChange" let-item let-index="index">
{{ item.amountAfterChange | currency }} {{ item.amountAfterChange | currency }}
</ng-template> </ng-template>
</st> </st>
<div><span>变更原因:{{ViewCause?.changeCause}}</span></div> <div
<div><span>拒绝原因:{{ViewCause?.refuseCause}}</span></div> ><span>变更原因:{{ ViewCause?.changeCause }}</span></div
>
<div
><span>拒绝原因:{{ ViewCause?.refuseCause }}</span></div
>
<div><span>注:附加费依据调整后的运输费用重新计算</span></div> <div><span>注:附加费依据调整后的运输费用重新计算</span></div>
</ng-container> </ng-container>
<ng-template #nzModalFooterview> <ng-template #nzModalFooterview>
@ -202,17 +200,19 @@
</nz-modal> </nz-modal>
<ng-template #extraTemplate> <ng-template #extraTemplate>
<div> <div>
<button nz-button nzType="primary"(click)="modifyRate()"> <button nz-button nzType="primary" (click)="modifyRate()" acl [acl-ability]="['ORDER-VEHICLE-modificationAdditional']"> 修改附加费率 </button>
修改附加费率 <button nz-button nzType="primary" (click)="modifyFreightPeople()" acl [acl-ability]="['ORDER-VEHICLE-modificationNetworkFreight']"> 修改网络货运人 </button>
</button> <button nz-button nzType="primary" (click)="modifycaptain()" acl [acl-ability]="['ORDER-VEHICLE-modificationCarCaptain']"> 修改车队长 </button>
<button nz-button nzType="primary"(click)="modifyFreightPeople()"> <button
修改网络货运人 nz-button
</button> nzType="primary"
<button nz-button nzType="primary"(click)="modifycaptain()"> nzGhost
修改车队长 nz-popconfirm
</button> [nzPopconfirmTitle]="enable"
<button nz-button nzType="primary" nzGhost nz-popconfirm (nzOnConfirm)="userAction()"
[nzPopconfirmTitle]="enable" (nzOnConfirm)="userAction()" nzPopconfirmPlacement="bottomRight"> nzPopconfirmPlacement="bottomRight"
acl [acl-ability]="['ORDER-VEHICLE-batchSignWholeOrder']"
>
批量签收 批量签收
</button> </button>
</div> </div>
@ -220,10 +220,9 @@
<ng-template #enable> <ng-template #enable>
<div class="ant-popover-message"> <div class="ant-popover-message">
<i nz-icon nzType="info-circle" nzTheme="fill"></i> <i nz-icon nzType="info-circle" nzTheme="fill"></i>
<div class="ant-popover-message-title ng-star-inserted self-ant-popover-title" style="font-size: 16px">已选择{{selectedRows?.length || 0}}条订单,确认批量签收吗? <div class="ant-popover-message-title ng-star-inserted self-ant-popover-title" style="font-size: 16px"
</div> >已选择{{ selectedRows?.length || 0 }}条订单,确认批量签收吗?
<div class="ant-popover-message-title ng-star-inserted">
签收后不可再修改运费,请确保运费等信息准确无误后,再进行签收。
</div> </div>
<div class="ant-popover-message-title ng-star-inserted"> 签收后不可再修改运费,请确保运费等信息准确无误后,再进行签收。 </div>
</div> </div>
</ng-template> </ng-template>

View File

@ -415,36 +415,43 @@ resourceStatus: any;
text: '运费变更记录', text: '运费变更记录',
click: (_record) => this.OpenPrice(_record), click: (_record) => this.OpenPrice(_record),
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '6', iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '6',
acl: { ability: ['ORDER-VEHICLE-ChangeApplyList'] },
}, },
{ {
text: '查看评价 ', text: '查看评价 ',
click: (_record) => this.viewEvaluate(_record), click: (_record) => this.viewEvaluate(_record),
iif: item => item.billStatus == '5', iif: item => item.billStatus == '5',
acl: { ability: ['ORDER-VEHICLE-evaluation'] },
}, },
{ {
text: '变更运费 ', text: '变更运费 ',
click: (_record) => this.updateFreight(_record), click: (_record) => this.updateFreight(_record),
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2', iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
acl: { ability: ['ORDER-VEHICLE-FreightChangeWholeDetail'] },
}, },
{ {
text: '确认签收 ', text: '确认签收 ',
click: (_record) => this.confirmReceipt(_record), click: (_record) => this.confirmReceipt(_record),
iif: item => item.billStatus == '4', iif: item => item.billStatus == '4',
acl: { ability: ['ORDER-VEHICLE-signWholeOrder'] },
}, },
{ {
text: '取消订单 ', text: '取消订单 ',
click: (_record) => this.cancellation(_record), click: (_record) => this.cancellation(_record),
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '1', iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3' || item.billStatus == '1',
acl: { ability: ['ORDER-VEHICLE-cancelAnOrder'] },
}, },
{ {
text: '修改订单 ', text: '修改订单 ',
click: (_record) => this.changeOrder(_record), click: (_record) => this.changeOrder(_record),
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3', iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3',
acl: { ability: ['ORDER-VEHICLE-modificationOrder'] },
}, },
{ {
text: '查看轨迹 ', text: '查看轨迹 ',
click: (_record) => this.cancellation(_record), click: (_record) => this.cancellation(_record),
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3', iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3',
// acl: { ability: ['VEHICLE-LIST-view'] },
}, },
], ],

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-15 13:17:42 * @Date : 2021-12-15 13:17:42
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-21 16:59:43 * @LastEditTime : 2022-02-15 15:12:02
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\audit\\voucher-view\\voucher-view.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\audit\\voucher-view\\voucher-view.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -27,5 +27,5 @@
<div class="modal-footer"> <div class="modal-footer">
<button nz-button type="button" *ngIf="Status === 1" (click)="close()">关闭</button> <button nz-button type="button" *ngIf="Status === 1" (click)="close()">关闭</button>
<button nz-button type="submit" *ngIf="Status === 1" nzType="primary" (click)="save(sf.value)" [nzLoading]="http.loading">确定</button> <button nz-button type="submit" *ngIf="Status === 1" nzType="primary" (click)="save(sf.value)" [nzLoading]="http.loading">确定</button>
<button nz-button type="submit" nzType="primary" *ngIf="Status !== 1" (click)="sure()" [nzLoading]="http.loading">生成电子单据</button> <button nz-button type="submit" nzType="primary" *ngIf="Status == 2" (click)="sure()" [nzLoading]="http.loading">生成电子单据</button>
</div> </div>