Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop
This commit is contained in:
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-15 14:25:34
|
||||
* @LastEditTime: 2021-12-20 17:11:27
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\components\vehicle\vehicle.component.html
|
||||
@ -47,7 +47,7 @@
|
||||
#st
|
||||
[bordered]="true"
|
||||
[scroll]="{ x: '2000px' }"
|
||||
[data]="service.$api_get_bulkPage_list"
|
||||
[data]="service.$api_get_listBulkPage"
|
||||
[columns]="columns"
|
||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
|
||||
@ -55,8 +55,27 @@
|
||||
[loadingDelay]="500"
|
||||
[loading]="service.http.loading"
|
||||
>
|
||||
<ng-template st-row="goodsId" let-item let-index="index">
|
||||
<a [routerLink]="'/order-management/bulk-detail/'+item.id">{{item.id}}</a>
|
||||
<ng-template st-row="billCode" let-item let-index="index">
|
||||
<a [routerLink]="'/waybill-management/vehicle-detail/'+item.id">{{item.wayBillCode}}</a>
|
||||
<div>
|
||||
<span>{{item?.billStatusLabel}}</span>
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template st-row="goodsName" let-item let-index="index">
|
||||
<div>{{item?.goodsName}}</div>
|
||||
<div>
|
||||
<span>{{item?.weight ? item?.weight + '吨/' : '' }}</span>
|
||||
<span>{{item?.volume ? item?.volume + '方/' : '' }}</span>
|
||||
<span>{{item?.goodsNumber ? item?.goodsNumber + '吨' : '' }}</span>
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template st-row="mybidDetailInfo" let-item let-index="index">
|
||||
<div *ngIf="item.mybidDetailInfo.length > 0">
|
||||
<p *ngFor="let data of item.mybidDetailInfo">
|
||||
{{ data.expenseName }}:{{ data.price }}
|
||||
<span *ngIf="data.paymentStatus" style="color: #f59a63">{{ data.paymentStatus }}</span>
|
||||
</p>
|
||||
</div>
|
||||
</ng-template>
|
||||
<!-- <ng-template st-row="externalSn" let-item let-index="index">
|
||||
<span class="mr-xs">{{111111}}</span>
|
||||
@ -93,6 +112,14 @@
|
||||
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
||||
[loadingDelay]="500"
|
||||
>
|
||||
<ng-template st-row="externalSn" let-item let-index="index">
|
||||
<div>
|
||||
<span *ngIf="item?.externalSn == '1'">待确认</span>
|
||||
<span *ngIf="item?.externalSn == '2'">已确认</span>
|
||||
<span *ngIf="item?.externalSn == '3'">已撤销</span>
|
||||
<span *ngIf="item?.externalSn == '4'">拒绝</span>
|
||||
</div>
|
||||
</ng-template>
|
||||
</st>
|
||||
</ng-container>
|
||||
<ng-template #nzModalFooter>
|
||||
|
||||
@ -10,6 +10,7 @@ import { ConfirReceiptComponent } from '../../modal/bulk/confir-receipt/confir-r
|
||||
import { SureDepartComponent } from '../../modal/bulk/sure-depart/sure-depart.component';
|
||||
import { SureArriveComponent } from '../../modal/bulk/sure-arrive/sure-arrive.component';
|
||||
import { of } from 'rxjs';
|
||||
import { ShipperBaseService } from '@shared';
|
||||
|
||||
|
||||
@Component({
|
||||
@ -82,7 +83,7 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
count: 0,
|
||||
},
|
||||
];
|
||||
constructor(public service: OrderManagementService, private modal: NzModalService) { }
|
||||
constructor(public service: OrderManagementService, private modal: NzModalService,public service2: ShipperBaseService) { }
|
||||
|
||||
/**
|
||||
* 查询参数
|
||||
@ -112,37 +113,37 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
this.schema = {
|
||||
properties: {
|
||||
_$expand: { type: 'boolean', ui: { hidden: true } },
|
||||
no: {
|
||||
billCode: {
|
||||
type: 'string',
|
||||
title: '订单号',
|
||||
title: '订单号'
|
||||
},
|
||||
no2: {
|
||||
resourceCode: {
|
||||
type: 'string',
|
||||
title: '货源编号'
|
||||
},
|
||||
no1: {
|
||||
shipperAppUserId: {
|
||||
type: 'string',
|
||||
title: '货主'
|
||||
},
|
||||
no3: {
|
||||
loadingPlace: {
|
||||
type: 'string',
|
||||
title: '装货地',
|
||||
ui: {
|
||||
visibleIf: {
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
_$expand: (value: boolean) => value
|
||||
}
|
||||
}
|
||||
},
|
||||
no4: {
|
||||
dischargePlace: {
|
||||
type: 'string',
|
||||
title: '卸货地',
|
||||
ui: {
|
||||
visibleIf: {
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
_$expand: (value: boolean) => value
|
||||
}
|
||||
}
|
||||
},
|
||||
brandId: {
|
||||
driverId: {
|
||||
title: '承运司机',
|
||||
type: 'string',
|
||||
ui: {
|
||||
@ -153,27 +154,43 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
onSearch: (q: any) => {
|
||||
if (!!q) {
|
||||
return this.service
|
||||
.request(this.service.$api_get_getDriverInfo, { keyword: q,
|
||||
model: 1, type: 1 })
|
||||
.pipe(map((res) => (res as any[]).map((i) => ({ label: i.name, value: i.id } as SFSchemaEnum))))
|
||||
.request(this.service.$api_get_getDriverInfo, { keyword: q, model: 1, type: 1 })
|
||||
.pipe(map(res => (res as any[]).map(i => ({ label: i.name, value: i.id } as SFSchemaEnum))))
|
||||
.toPromise();
|
||||
} else {
|
||||
return of([]);
|
||||
}
|
||||
},
|
||||
visibleIf: {
|
||||
expand: (value: boolean) => value,
|
||||
_$expand: (value: boolean) => value
|
||||
}
|
||||
} as SFSelectWidgetSchema
|
||||
},
|
||||
} as SFSelectWidgetSchema,
|
||||
},
|
||||
no9: {
|
||||
type: 'string',
|
||||
|
||||
carNo: {
|
||||
title: '车牌号',
|
||||
type: 'string',
|
||||
ui: {
|
||||
widget: 'select',
|
||||
serverSearch: true,
|
||||
searchDebounceTime: 300,
|
||||
searchLoadingText: '搜索中...',
|
||||
onSearch: (q: any) => {
|
||||
if (!!q) {
|
||||
return this.service
|
||||
.request(this.service.$api_get_getCarLicenseListByCarNo, {
|
||||
carNo: q
|
||||
})
|
||||
.pipe(map((res: any[]) => (res as any[]).map((i) => ({ label: i.carNo, value: i.carNo } as SFSchemaEnum))))
|
||||
.toPromise();
|
||||
} else {
|
||||
return of([]);
|
||||
}
|
||||
},
|
||||
visibleIf: {
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
}
|
||||
} as SFSelectWidgetSchema,
|
||||
},
|
||||
payeeId: {
|
||||
title: '车队长',
|
||||
@ -195,22 +212,17 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
}
|
||||
},
|
||||
visibleIf: {
|
||||
expand: (value: boolean) => value,
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
} as SFSelectWidgetSchema,
|
||||
},
|
||||
sex: {
|
||||
paymentstatus: {
|
||||
title: '支付状态',
|
||||
type: 'string',
|
||||
default: 0,
|
||||
enum: [
|
||||
{ label: '未知', value: 0 },
|
||||
{ label: '男', value: 1 },
|
||||
{ label: '女', value: 2 },
|
||||
{ label: '保密', value: 3 },
|
||||
],
|
||||
ui: {
|
||||
widget: 'select',
|
||||
widget: 'dict-select',
|
||||
params: { dictKey: 'payment:status' },
|
||||
containAllLable:true,
|
||||
visibleIf: {
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
@ -224,24 +236,28 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
mode: 'range',
|
||||
format: 'yyyy-MM-dd',
|
||||
visibleIf: {
|
||||
_$expand: (value: boolean) => value,
|
||||
_$expand: (value: boolean) => value
|
||||
}
|
||||
} as SFDateWidgetSchema
|
||||
},
|
||||
} as SFDateWidgetSchema,
|
||||
},
|
||||
appId: {
|
||||
isRiskSheet: {
|
||||
type: 'string',
|
||||
title: '是否风险单',
|
||||
default: '0',
|
||||
enum: [
|
||||
{ label: '全部', value: '0' },
|
||||
{ label: '是', value: '1' },
|
||||
{ label: '否', value: '2' }
|
||||
],
|
||||
ui: {
|
||||
widget: 'select',
|
||||
placeholder: '请选择',
|
||||
visibleIf: {
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
allowClear: true,
|
||||
asyncData: () => this.getCatalogueMember(),
|
||||
},
|
||||
},
|
||||
appId2: {
|
||||
enterpriseInfoName: {
|
||||
type: 'string',
|
||||
title: '网络货运人',
|
||||
ui: {
|
||||
@ -251,23 +267,10 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
allowClear: true,
|
||||
asyncData: () => this.getCatalogueMember(),
|
||||
asyncData: () => this.service2.getNetworkFreightForwarder(),
|
||||
},
|
||||
},
|
||||
appId3: {
|
||||
type: 'string',
|
||||
title: '结算依据',
|
||||
ui: {
|
||||
widget: 'dict-select',
|
||||
params: { dictKey: 'goodresource:settlement:type' },
|
||||
containAllLable:true,
|
||||
placeholder: '请选择',
|
||||
visibleIf: {
|
||||
_$expand: (value: boolean) => value,
|
||||
},
|
||||
},
|
||||
},
|
||||
appId4: {
|
||||
goodsName: {
|
||||
type: 'string',
|
||||
title: '货物名称',
|
||||
ui: {
|
||||
@ -294,7 +297,7 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
} as SFSelectWidgetSchema,
|
||||
},
|
||||
},
|
||||
type: 'object',
|
||||
type: 'object'
|
||||
};
|
||||
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
|
||||
}
|
||||
@ -351,71 +354,70 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
title: '订单号',
|
||||
width: '100px',
|
||||
className: 'text-center',
|
||||
render: 'goodsId'
|
||||
render: 'billCode'
|
||||
},
|
||||
{
|
||||
title: '运费明细',
|
||||
width: '100px',
|
||||
index: 'externalSn',
|
||||
className: 'text-center',
|
||||
render: 'mybidDetailInfo',
|
||||
},
|
||||
{ title: '网络货运人', index: 'externalSn', width: '120px', className: 'text-center' },
|
||||
{ title: '托运人', index: 'externalSn', width: '120px', className: 'text-center' },
|
||||
{ title: '关联运单号', index: 'externalSn', width: '120px', className: 'text-center' },
|
||||
{ title: '货源编号', index: 'externalSn', width: '120px', className: 'text-center' },
|
||||
{ title: '装货地', index: 'linkUrl', width: '120px', className: 'text-center' },
|
||||
{ title: '网络货运人', index: 'enterpriseInfoName', width: '120px', className: 'text-center' },
|
||||
{ title: '托运人', index: 'enterpriseProjectName', width: '120px', className: 'text-center' },
|
||||
{ title: '关联运单号', index: 'wayBillCode', width: '120px', className: 'text-center' },
|
||||
{ title: '货源编号', index: 'resourceCode', width: '120px', className: 'text-center' },
|
||||
{ title: '装货地', index: 'loadingAddressArr', width: '120px', className: 'text-center' },
|
||||
{
|
||||
title: '卸货地',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
index: 'unloadingAddressArr'
|
||||
},
|
||||
{
|
||||
title: '货物信息',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
},
|
||||
{
|
||||
render: 'goodsName'
|
||||
}, {
|
||||
title: '运费单价',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
index: 'freightPrice'
|
||||
},
|
||||
{
|
||||
title: '接单数量',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
index: 'goodsNumber',
|
||||
width: '100px',
|
||||
},
|
||||
{
|
||||
title: '结算重量',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
},
|
||||
{
|
||||
title: '接单重量',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
index: 'settlementWeight',
|
||||
width: '100px',
|
||||
},
|
||||
{
|
||||
title: '承运司机',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
render: 'feiong'
|
||||
index: 'driverName',
|
||||
width: '100px',
|
||||
},
|
||||
{
|
||||
title: '收款人',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
index: 'payeeName',
|
||||
width: '100px',
|
||||
},
|
||||
{
|
||||
title: '装卸货时间',
|
||||
width: '170px',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
render: 'enStatusStr27878'
|
||||
render: 'loadingTime'
|
||||
},
|
||||
{
|
||||
title: '创建时间',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
|
||||
index: 'createTime',
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
@ -472,7 +474,7 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
className: 'text-center',
|
||||
index: 'three',
|
||||
},
|
||||
{ title: '状态', index: 'externalSn', className: 'text-center' },
|
||||
{ title: '状态', render: 'externalSn', className: 'text-center' },
|
||||
{
|
||||
title: '操作',
|
||||
fixed: 'right',
|
||||
@ -485,6 +487,7 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
{
|
||||
text: '撤销',
|
||||
click: (_record) => this.audit(_record),
|
||||
iif: item => item.externalSn === '1' || item.externalSn === 1,
|
||||
},
|
||||
],
|
||||
},
|
||||
@ -635,7 +638,8 @@ export class OrderManagementBulkComponent implements OnInit {
|
||||
nzWidth: '50%',
|
||||
nzContent: SureDepartComponent,
|
||||
nzComponentParams: {
|
||||
i: item
|
||||
i: item,
|
||||
Status: 1
|
||||
},
|
||||
nzFooter: null
|
||||
});
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-20 09:56:30
|
||||
* @LastEditTime: 2021-12-20 17:07:17
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\components\vehicle\vehicle.component.html
|
||||
@ -47,23 +47,39 @@
|
||||
#st
|
||||
[bordered]="true"
|
||||
[scroll]="{ x: '2000px' }"
|
||||
[data]="service.$api_get_getWholeBillDetail"
|
||||
[data]="service.$api_get_listWholePage"
|
||||
[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] }"
|
||||
[loadingDelay]="500"
|
||||
[loading]="service.http.loading"
|
||||
|
||||
>
|
||||
<ng-template st-row="billCode" let-item let-index="index">
|
||||
<a [routerLink]="'/waybill-management/vehicle-detail/'+item.id">{{item.wayBillCode}}</a>
|
||||
<div>
|
||||
<span *ngIf="item?.wayBillStatus == 1">待接单</span>
|
||||
<span *ngIf="item?.wayBillStatus == 2">待发车</span>
|
||||
<span *ngIf="item?.wayBillStatus == 3">运输中</span>
|
||||
<span *ngIf="item?.wayBillStatus == 4">待签收</span>
|
||||
<span *ngIf="item?.wayBillStatus == 5">已完成</span>
|
||||
<span *ngIf="item?.wayBillStatus == 6">已取消</span>
|
||||
<span>{{item?.billStatusLabel}}</span>
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template st-row="goodsName" let-item let-index="index">
|
||||
<div>{{item?.goodsName}}</div>
|
||||
<div>
|
||||
<span>{{item?.weight ? item?.weight + '吨/' : '' }}</span>
|
||||
<span>{{item?.volume ? item?.volume + '方/' : '' }}</span>
|
||||
<span>{{item?.goodsNumber ? item?.goodsNumber + '吨' : '' }}</span>
|
||||
</div>
|
||||
</ng-template>
|
||||
<!-- 运费明细 -->
|
||||
<!-- <ng-template st-row="mybidDetailInfo" let-item let-index="index">
|
||||
<div *ngFor="let i of item?.mybidDetailInfo">
|
||||
<div></div>
|
||||
</div>
|
||||
</ng-template> -->
|
||||
<ng-template st-row="mybidDetailInfo" let-item let-index="index">
|
||||
<div *ngIf="item.mybidDetailInfo.length > 0">
|
||||
<p *ngFor="let data of item.mybidDetailInfo">
|
||||
{{ data.expenseName }}:{{ data.price }}
|
||||
<span *ngIf="data.paymentStatus" style="color: #f59a63">{{ data.paymentStatus }}</span>
|
||||
</p>
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template st-row="billExpenseDetailVOList" let-item let-index="index">
|
||||
@ -71,6 +87,22 @@
|
||||
<span >{{i?.costName}}:{{i?.price}}</span>
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template st-row="driverName" let-item let-index="index">
|
||||
<div>
|
||||
{{item?.driverName}}
|
||||
</div>
|
||||
<div>
|
||||
{{item?.driverPhone}}
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template st-row="payeeName" let-item let-index="index">
|
||||
<div>
|
||||
{{item?.payeeName}}
|
||||
</div>
|
||||
<div>
|
||||
{{item?.payeePhone}}
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template st-row="loadingTime" let-item let-index="index">
|
||||
<div *ngIf="item?.loadingTime">装 | {{item?.loadingTime}}</div>
|
||||
<div *ngIf="item?.unloadingTime">卸 | {{item?.unloadingTime}}</div>
|
||||
@ -102,21 +134,23 @@
|
||||
</nz-card>
|
||||
|
||||
|
||||
<nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooter" nzTitle="浮动费用" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel('0')">
|
||||
<nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooter" nzTitle="运费变更记录" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel('0')">
|
||||
<ng-container *nzModalContent>
|
||||
<st
|
||||
#stFloat
|
||||
multiSort
|
||||
size="small"
|
||||
[bordered]="true"
|
||||
[data]="service.$api_get_getWholeBillDetail"
|
||||
[data]="service.$api_get_listChangeApply"
|
||||
[columns]="columnsFloat"
|
||||
[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] }"
|
||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeParams }"
|
||||
[res]="{ reName: { list: 'data', total: 'data.total' } }"
|
||||
[loadingDelay]="500"
|
||||
>
|
||||
|
||||
>
|
||||
<ng-template st-row="order" let-item let-index="index">
|
||||
{{ index + 1 }}
|
||||
</ng-template>
|
||||
</st>
|
||||
</ng-container>
|
||||
<ng-template #nzModalFooter>
|
||||
@ -133,11 +167,10 @@
|
||||
multiSort
|
||||
size="small"
|
||||
[bordered]="true"
|
||||
[data]="datass"
|
||||
[data]="service.$api_get_getChangeRecordWholeDetail"
|
||||
[columns]="columnsFloatView"
|
||||
[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] }"
|
||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeViewParams }"
|
||||
[res]="{ reName: { list: 'data', total: 'data.total' } }"
|
||||
[loadingDelay]="500"
|
||||
>
|
||||
</st>
|
||||
|
||||
@ -26,6 +26,8 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
isVisibleView = false;
|
||||
isVisibleEvaluate = false;
|
||||
isVisible = false;
|
||||
changeId: any; // 主页面查看运费变更记录id - 用于运费变更记录
|
||||
changeViewId: any; // 查看运费变更记录id - 用于查看
|
||||
_$expand = false;
|
||||
@ViewChild('st') private readonly st!: STComponent;
|
||||
@ViewChild('stFloat') private readonly stFloat!: STComponent;
|
||||
@ -90,6 +92,16 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
...this.sf?.value,
|
||||
};
|
||||
}
|
||||
get changeParams() {
|
||||
return {
|
||||
id: this.changeId
|
||||
};
|
||||
}
|
||||
get changeViewParams() {
|
||||
return {
|
||||
id: this.changeViewId
|
||||
};
|
||||
}
|
||||
get selectedRows() {
|
||||
return this.st?.list.filter((item) => item.checked) || [];
|
||||
}
|
||||
@ -314,33 +326,34 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
title: '运费明细',
|
||||
width: '100px',
|
||||
className: 'text-center',
|
||||
render: 'billExpenseDetailVOList',
|
||||
render: 'mybidDetailInfo',
|
||||
},
|
||||
{ title: '网络货运人', index: 'enterpriseInfoId', width: '120px', className: 'text-center' },
|
||||
{ title: '货主', index: 'shipperAppUserId', width: '120px', className: 'text-center' },
|
||||
{ title: '关联运单号', index: 'linkUrl', width: '120px', className: 'text-center' },
|
||||
{ title: '网络货运人', index: 'enterpriseInfoName', width: '120px', className: 'text-center' },
|
||||
{ title: '货主', index: 'shipperAppUserName', width: '120px', className: 'text-center' },
|
||||
{ title: '关联运单号', index: 'wayBillCode', width: '120px', className: 'text-center' },
|
||||
{ title: '货源编号', index: 'resourceCode', width: '120px', className: 'text-center' },
|
||||
{ title: '装货地', index: 'loadingPlace', width: '120px', className: 'text-center' },
|
||||
{ title: '装货地', index: 'loadingAddressArr', width: '120px', className: 'text-center' },
|
||||
{
|
||||
title: '卸货地',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
index: 'dischargePlace'
|
||||
index: 'unloadingAddressArr'
|
||||
},
|
||||
{
|
||||
title: '货物信息',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
render: 'goodsName'
|
||||
}, {
|
||||
title: '承运司机',
|
||||
className: 'text-center',
|
||||
width: '120px',
|
||||
index: 'driverId'
|
||||
render: 'driverName'
|
||||
},
|
||||
{
|
||||
title: '收款人',
|
||||
className: 'text-center',
|
||||
index: 'payeeId',
|
||||
render: 'payeeName',
|
||||
width: '100px',
|
||||
},
|
||||
{
|
||||
@ -366,7 +379,7 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
},
|
||||
{
|
||||
text: '运费变更记录',
|
||||
click: (_record) => this.OpenPrice(),
|
||||
click: (_record) => this.OpenPrice(_record),
|
||||
},
|
||||
{
|
||||
text: '变更运费',
|
||||
@ -397,19 +410,19 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
{
|
||||
title: '序号',
|
||||
className: 'text-center',
|
||||
index: 'one',
|
||||
render: 'order'
|
||||
},
|
||||
{
|
||||
title: '操作时间',
|
||||
className: 'text-center',
|
||||
index: 'two',
|
||||
index: 'applyTime'
|
||||
},
|
||||
{
|
||||
title: '操作人',
|
||||
className: 'text-center',
|
||||
index: 'three',
|
||||
index: 'applyUserName'
|
||||
},
|
||||
{ title: '状态', index: 'externalSn', className: 'text-center' },
|
||||
{ title: '状态', index: 'handleStatus', className: 'text-center' },
|
||||
{
|
||||
title: '操作',
|
||||
fixed: 'right',
|
||||
@ -419,9 +432,13 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
text: '查看',
|
||||
click: (_record) => this.FloatView(_record),
|
||||
},
|
||||
// {
|
||||
// text: '查看协议',
|
||||
// click: (_record, _modal, _instance) => this.view(_record)
|
||||
// },
|
||||
{
|
||||
text: '撤销',
|
||||
click: (_record) => this.audit(_record),
|
||||
click: (_record) => this.revoke(_record),
|
||||
},
|
||||
],
|
||||
},
|
||||
@ -520,7 +537,9 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
handleOK() {
|
||||
|
||||
}
|
||||
OpenPrice() {
|
||||
OpenPrice(value: any) {
|
||||
console.log(value)
|
||||
this.changeId = value.id;
|
||||
this.isVisible = true
|
||||
}
|
||||
/**
|
||||
@ -528,6 +547,8 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
*/
|
||||
FloatView(item: any) {
|
||||
console.log(item)
|
||||
console.log()
|
||||
this.changeViewId = item.id;
|
||||
this.isVisibleView = true
|
||||
}
|
||||
/**
|
||||
@ -573,7 +594,8 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
nzWidth: '50%',
|
||||
nzContent: VehicleSureDepartComponent,
|
||||
nzComponentParams: {
|
||||
i: item
|
||||
i: item,
|
||||
Status: 2
|
||||
},
|
||||
nzFooter: null
|
||||
});
|
||||
@ -590,4 +612,19 @@ export class OrderManagementVehicleComponent implements OnInit {
|
||||
nzFooter: null
|
||||
});
|
||||
}
|
||||
revoke(item: any) {
|
||||
this.modal.confirm({
|
||||
nzTitle: '是否确定立即撤销费用变更!</i>',
|
||||
nzOnOk: () =>
|
||||
this.service.request(this.service.$api_get_revokeChangeRecord, { id: item.id}).subscribe((res) => {
|
||||
console.log(res)
|
||||
if(res) {
|
||||
this.service.msgSrv.success('撤销成功!')
|
||||
this.stFloat.reload()
|
||||
} else {
|
||||
this.service.msgSrv.error(res.msg)
|
||||
}
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@ import { preloaderFinished } from '@delon/theme';
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 14:03:07
|
||||
* @LastEditTime: 2021-12-14 16:34:52
|
||||
* @LastEditTime: 2021-12-20 16:13:16
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.ts
|
||||
@ -34,6 +34,8 @@ import { Observable, Observer } from 'rxjs';
|
||||
export class SureDepartComponent implements OnInit {
|
||||
record: any = {};
|
||||
i: any;
|
||||
Status: any;
|
||||
|
||||
data: any ={
|
||||
place1: '',
|
||||
place2: ''
|
||||
|
||||
@ -2,7 +2,7 @@ import { preloaderFinished } from '@delon/theme';
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 14:03:07
|
||||
* @LastEditTime: 2021-12-14 17:38:20
|
||||
* @LastEditTime: 2021-12-20 16:21:19
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.ts
|
||||
@ -34,6 +34,7 @@ import { Observable, Observer } from 'rxjs';
|
||||
export class VehicleSureArriveComponent implements OnInit {
|
||||
record: any = {};
|
||||
i: any;
|
||||
Status: any;
|
||||
data: any ={
|
||||
place1: '',
|
||||
place2: ''
|
||||
|
||||
@ -1,21 +1,21 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 15:53:03
|
||||
* @LastEditTime: 2021-12-14 16:19:03
|
||||
* @LastEditTime: 2021-12-20 16:28:39
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\sure-depart\sure-depart.component.html
|
||||
-->
|
||||
<sf #sf mode="edit" [schema]="schema" [ui]="ui" [formData]="i" button="none">
|
||||
<ng-template sf-template="no2" let-me let-ui="ui" let-schema="schema">
|
||||
<ng-template sf-template="weight" let-me let-ui="ui" let-schema="schema">
|
||||
<div style="display: flex;">
|
||||
<nz-input-number [(ngModel)]="data.place1" [nzMin]="1" [nzMax]="10" [nzStep]="1"></nz-input-number>
|
||||
<nz-input-number [(ngModel)]="data.weight" [nzMin]="1" [nzMax]="999999" [nzStep]="1"></nz-input-number>
|
||||
<div class="left_btn">吨</div>
|
||||
</div>
|
||||
</ng-template>
|
||||
<ng-template sf-template="no3" let-me let-ui="ui" let-schema="schema">
|
||||
<ng-template sf-template="volume" let-me let-ui="ui" let-schema="schema">
|
||||
<div style="display: flex;">
|
||||
<nz-input-number [(ngModel)]="data.place2" [nzMin]="1" [nzMax]="10" [nzStep]="1"></nz-input-number>
|
||||
<nz-input-number [(ngModel)]="data.volume" [nzMin]="1" [nzMax]="999999" [nzStep]="1"></nz-input-number>
|
||||
<div class="left_btn">方</div>
|
||||
</div>
|
||||
</ng-template>
|
||||
|
||||
@ -2,7 +2,7 @@ import { preloaderFinished } from '@delon/theme';
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 14:03:07
|
||||
* @LastEditTime: 2021-12-14 16:34:52
|
||||
* @LastEditTime: 2021-12-20 16:54:21
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.ts
|
||||
@ -20,11 +20,13 @@ import {
|
||||
SFUISchema,
|
||||
SFUploadWidgetSchema
|
||||
} from '@delon/form';
|
||||
import { apiConf } from '@conf/api.conf';
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||
import { SupplyManagementService } from 'src/app/routes/supply-management/services/supply-management.service';
|
||||
import { Observable, Observer } from 'rxjs';
|
||||
import { WaybillManagementServe } from 'src/app/routes/waybill-management/services/waybill-management.service';
|
||||
import { EAEnvironmentService, EADateUtil } from '@shared';
|
||||
|
||||
@Component({
|
||||
selector: 'app-order-management-vehicle-sure-depart',
|
||||
@ -34,19 +36,25 @@ import { Observable, Observer } from 'rxjs';
|
||||
export class VehicleSureDepartComponent implements OnInit {
|
||||
record: any = {};
|
||||
i: any;
|
||||
Status: any;
|
||||
data: any ={
|
||||
place1: '',
|
||||
place2: ''
|
||||
weight: '',
|
||||
volume: ''
|
||||
};
|
||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||
schema: SFSchema = {};
|
||||
ui: SFUISchema = {};
|
||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient, public service: SupplyManagementService ) {}
|
||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient, public service: WaybillManagementServe, private envSrv: EAEnvironmentService,) {}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.initSF();
|
||||
console.log(this.i)
|
||||
this.data.weight = this.i?.weight
|
||||
this.i.time = this.i.loadingTime;
|
||||
console.log(this.Status)
|
||||
}
|
||||
initSF() {
|
||||
if(this.Status === 1) {
|
||||
this.schema = {
|
||||
properties: {
|
||||
datetime: {
|
||||
@ -54,14 +62,103 @@ export class VehicleSureDepartComponent implements OnInit {
|
||||
title: '装货时间',
|
||||
format: 'date-time',
|
||||
},
|
||||
no2: {
|
||||
imgUrl1: {
|
||||
type: 'string',
|
||||
title: '装货凭证',
|
||||
ui: {
|
||||
widget: 'upload',
|
||||
action: apiConf.fileUpload,
|
||||
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
|
||||
limit: 1,
|
||||
limitFileCount: 1,
|
||||
resReName: 'data.fullFileWatermarkPath',
|
||||
urlReName: 'data.fullFileWatermarkPath',
|
||||
descriptionI18n: '提货单',
|
||||
data: {
|
||||
appId: this.envSrv.env.appId,
|
||||
},
|
||||
name: 'multipartFile',
|
||||
beforeUpload: (file: any, fileList: any) => {
|
||||
return new Observable((observer: Observer<boolean>) => {
|
||||
const isLt1M = file.size / 1024 / 1024 < 5;
|
||||
const fileType = 'image/png,image/jpeg';
|
||||
if (fileType.indexOf(file.type) === -1) {
|
||||
this.service.msgSrv.warning('图片格式不正确!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
if (!isLt1M) {
|
||||
this.service.msgSrv.warning('图片大小超过5M!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
observer.next(isLt1M);
|
||||
observer.complete();
|
||||
});
|
||||
},
|
||||
multiple: false,
|
||||
listType: 'picture-card',
|
||||
showRequired: true,
|
||||
} as SFUploadWidgetSchema,
|
||||
},
|
||||
imgUrl2: {
|
||||
type: 'string',
|
||||
title: '',
|
||||
ui: {
|
||||
widget: 'upload',
|
||||
action: apiConf.fileUpload,
|
||||
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
|
||||
limit: 1,
|
||||
limitFileCount: 1,
|
||||
resReName: 'data.fullFileWatermarkPath',
|
||||
urlReName: 'data.fullFileWatermarkPath',
|
||||
descriptionI18n: '人车货照片',
|
||||
data: {
|
||||
appId: this.envSrv.env.appId,
|
||||
},
|
||||
name: 'multipartFile',
|
||||
beforeUpload: (file: any, fileList: any) => {
|
||||
return new Observable((observer: Observer<boolean>) => {
|
||||
const isLt1M = file.size / 1024 / 1024 < 5;
|
||||
const fileType = 'image/png,image/jpeg';
|
||||
if (fileType.indexOf(file.type) === -1) {
|
||||
this.service.msgSrv.warning('图片格式不正确!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
if (!isLt1M) {
|
||||
this.service.msgSrv.warning('图片大小超过5M!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
observer.next(isLt1M);
|
||||
observer.complete();
|
||||
});
|
||||
},
|
||||
multiple: false,
|
||||
listType: 'picture-card',
|
||||
showRequired: true,
|
||||
} as SFUploadWidgetSchema,
|
||||
}
|
||||
},
|
||||
required: ['reason']
|
||||
};
|
||||
} else {
|
||||
this.schema = {
|
||||
properties: {
|
||||
time: {
|
||||
type: 'string',
|
||||
title: '装货时间',
|
||||
format: 'date-time',
|
||||
},
|
||||
weight: {
|
||||
type: 'string',
|
||||
title: '装货重量',
|
||||
ui: {
|
||||
widget: 'custom',
|
||||
}
|
||||
},
|
||||
no3: {
|
||||
volume: {
|
||||
type: 'string',
|
||||
title: '装货体积',
|
||||
ui: {
|
||||
@ -76,120 +173,120 @@ export class VehicleSureDepartComponent implements OnInit {
|
||||
},
|
||||
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式',
|
||||
},
|
||||
avatar: {
|
||||
imgUrl1: {
|
||||
type: 'string',
|
||||
title: '装货凭证',
|
||||
ui: {
|
||||
action: `/scm/cms/cms/upload/multipartFile/fileModel`,
|
||||
fileType: 'image/png,image/jpeg,image/jpg',
|
||||
widget: 'upload',
|
||||
action: apiConf.fileUpload,
|
||||
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
|
||||
limit: 1,
|
||||
limitFileCount: 1,
|
||||
resReName: 'url',
|
||||
urlReName: 'url',
|
||||
widget: 'upload',
|
||||
descriptionI18n: ' 提单号',
|
||||
resReName: 'data.fullFileWatermarkPath',
|
||||
urlReName: 'data.fullFileWatermarkPath',
|
||||
descriptionI18n: '提货单',
|
||||
data: {
|
||||
// appId: environment.appId,
|
||||
appId: this.envSrv.env.appId,
|
||||
},
|
||||
name: 'multipartFile',
|
||||
multiple: true,
|
||||
listType: 'picture-card',
|
||||
change: (args: any) => {
|
||||
if (args.type === 'success') {
|
||||
const avatar = [
|
||||
{
|
||||
uid: -1,
|
||||
name: 'LOGO',
|
||||
status: 'done',
|
||||
url: args.fileList[0].response.url,
|
||||
response: {
|
||||
url: args.fileList[0].response.url
|
||||
}
|
||||
}
|
||||
];
|
||||
this.sf?.setValue('/avatar', avatar);
|
||||
}
|
||||
},
|
||||
beforeUpload: (file: any, _fileList: any) => {
|
||||
beforeUpload: (file: any, fileList: any) => {
|
||||
return new Observable((observer: Observer<boolean>) => {
|
||||
const isLt2M = file.size / 1024 / 1024 < 5;
|
||||
if (!isLt2M) {
|
||||
const isLt1M = file.size / 1024 / 1024 < 5;
|
||||
const fileType = 'image/png,image/jpeg';
|
||||
if (fileType.indexOf(file.type) === -1) {
|
||||
this.service.msgSrv.warning('图片格式不正确!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
if (!isLt1M) {
|
||||
this.service.msgSrv.warning('图片大小超过5M!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
observer.next(isLt2M);
|
||||
observer.next(isLt1M);
|
||||
observer.complete();
|
||||
});
|
||||
}
|
||||
} as SFUploadWidgetSchema
|
||||
},
|
||||
avatar2: {
|
||||
multiple: false,
|
||||
listType: 'picture-card',
|
||||
showRequired: true,
|
||||
} as SFUploadWidgetSchema,
|
||||
},
|
||||
imgUrl2: {
|
||||
type: 'string',
|
||||
title: '',
|
||||
ui: {
|
||||
action: `/scm/cms/cms/upload/multipartFile/fileModel`,
|
||||
fileType: 'image/png,image/jpeg,image/jpg',
|
||||
widget: 'upload',
|
||||
action: apiConf.fileUpload,
|
||||
fileType: 'image/png,image/jpeg,image/jpg,image/gif',
|
||||
limit: 1,
|
||||
limitFileCount: 1,
|
||||
resReName: 'url',
|
||||
urlReName: 'url',
|
||||
widget: 'upload',
|
||||
resReName: 'data.fullFileWatermarkPath',
|
||||
urlReName: 'data.fullFileWatermarkPath',
|
||||
descriptionI18n: '人车货照片',
|
||||
data: {
|
||||
// appId: environment.appId,
|
||||
appId: this.envSrv.env.appId,
|
||||
},
|
||||
name: 'multipartFile',
|
||||
multiple: true,
|
||||
listType: 'picture-card',
|
||||
change: (args: any) => {
|
||||
if (args.type === 'success') {
|
||||
const avatar = [
|
||||
{
|
||||
uid: -1,
|
||||
name: 'LOGO',
|
||||
status: 'done',
|
||||
url: args.fileList[0].response.url,
|
||||
response: {
|
||||
url: args.fileList[0].response.url
|
||||
}
|
||||
}
|
||||
];
|
||||
this.sf?.setValue('/avatar', avatar);
|
||||
}
|
||||
},
|
||||
beforeUpload: (file: any, _fileList: any) => {
|
||||
beforeUpload: (file: any, fileList: any) => {
|
||||
return new Observable((observer: Observer<boolean>) => {
|
||||
const isLt2M = file.size / 1024 / 1024 < 5;
|
||||
if (!isLt2M) {
|
||||
const isLt1M = file.size / 1024 / 1024 < 5;
|
||||
const fileType = 'image/png,image/jpeg';
|
||||
if (fileType.indexOf(file.type) === -1) {
|
||||
this.service.msgSrv.warning('图片格式不正确!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
if (!isLt1M) {
|
||||
this.service.msgSrv.warning('图片大小超过5M!');
|
||||
observer.complete();
|
||||
return;
|
||||
}
|
||||
observer.next(isLt2M);
|
||||
observer.next(isLt1M);
|
||||
observer.complete();
|
||||
});
|
||||
}
|
||||
} as SFUploadWidgetSchema
|
||||
},
|
||||
multiple: false,
|
||||
listType: 'picture-card',
|
||||
showRequired: true,
|
||||
} as SFUploadWidgetSchema,
|
||||
}
|
||||
},
|
||||
required: ['reason']
|
||||
};
|
||||
}
|
||||
|
||||
this.ui = {
|
||||
'*': {
|
||||
spanLabelFixed: 100,
|
||||
grid: { span: 20 }
|
||||
},
|
||||
$avatar: { grid: { span: 12} },
|
||||
$avatar2: { grid: { span: 12} },
|
||||
$imgUrl1: { grid: { span: 12} },
|
||||
$imgUrl2: { grid: { span: 12} },
|
||||
};
|
||||
}
|
||||
save(value: any): void {
|
||||
|
||||
console.log(value)
|
||||
// this.http.post(`/user/${this.record.id}`, value).subscribe(res => {
|
||||
// this.msgSrv.success('保存成功');
|
||||
// this.modal.close(true);
|
||||
// });
|
||||
const params = {
|
||||
id: this.i.id,
|
||||
imgUrl1: value.imgUrl1.data.fullFilePath,
|
||||
imgUrl2: value.imgUrl2.data.fullFilePath,
|
||||
time: value.time,
|
||||
volume: this.data.volume,
|
||||
weight: this.data.weight
|
||||
}
|
||||
console.log(EADateUtil.yearToDateTime(value.time))
|
||||
params.time = EADateUtil.yearToDateTime(value.time)
|
||||
console.log(params)
|
||||
|
||||
// this.service.request(this.service.$api_get_insertBulkStartCarInfo, params).subscribe((res) => {
|
||||
// if(res) {
|
||||
// this.service.msgSrv.success('确认发车成功!')
|
||||
// } else{
|
||||
// this.service.msgSrv.error(res.msg)
|
||||
// }
|
||||
// })
|
||||
}
|
||||
|
||||
close(): void {
|
||||
|
||||
@ -1,22 +1,27 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 14:03:07
|
||||
* @LastEditTime: 2021-12-15 15:53:02
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Date: 2021-12-15 13:17:42
|
||||
* @LastEditTime: 2021-12-20 15:55:51
|
||||
* @LastEditors: your name
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.html
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\vehicle\update-freight\update-freight.component.html
|
||||
-->
|
||||
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
|
||||
</sf>
|
||||
<nz-spin *ngIf="!i" class="modal-spin"></nz-spin>
|
||||
<sf #sf mode="edit" [schema]="schema" [ui]="ui" [formData]="i" button="none"></sf>
|
||||
<nz-divider></nz-divider>
|
||||
<div>
|
||||
<p style="font-weight: bolder;">总运费:<span style="color: red;">¥{{gross}}</span></p>
|
||||
<p>运输费:¥{{transportation}},附加费:¥{{additional}}</p>
|
||||
<p>
|
||||
<span style="font-weight: bolder"
|
||||
>总运费:<span style="color: #dc112a">¥{{ totalPrice }}</span></span
|
||||
>
|
||||
(运输费:¥{{ tranPrice }},附加费:¥{{ otherPrice }})
|
||||
</p>
|
||||
<p>
|
||||
<label nz-checkbox [(ngModel)]="aggreechecked">确认已阅读并知晓<a>《变更协议》</a></label>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button nz-button type="button" (click)="close()">关闭</button>
|
||||
<button nz-button type="submit" nzType="primary" (click)="save(sf.value)" [disabled]="!sf.valid" [nzLoading]="http.loading"
|
||||
>确认</button
|
||||
>
|
||||
<button nz-button type="submit" nzType="primary" (click)="save(sf.value)" [disabled]="!aggreechecked">确定</button>
|
||||
</div>
|
||||
|
||||
@ -2,7 +2,7 @@ import { preloaderFinished } from '@delon/theme';
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 14:03:07
|
||||
* @LastEditTime: 2021-12-15 15:52:36
|
||||
* @LastEditTime: 2021-12-20 15:57:37
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.ts
|
||||
@ -21,6 +21,7 @@ import {
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||
import { OrderManagementService } from '../../../services/order-management.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-order-management-vehicle-update-freight',
|
||||
@ -28,68 +29,140 @@ import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||
styleUrls: ['./update-freight.component.less']
|
||||
})
|
||||
export class VehicleUpdateFreightComponent implements OnInit {
|
||||
record: any = {};
|
||||
record: any;
|
||||
i: any;
|
||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||
schema: SFSchema = {};
|
||||
ui: SFUISchema = {};
|
||||
data: any = {};
|
||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient) {}
|
||||
|
||||
totalPrice = 0;
|
||||
tranPrice = 0;
|
||||
otherPrice = 0;
|
||||
|
||||
aggreechecked = false;
|
||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public service: OrderManagementService) {}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.i = {
|
||||
prePay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'PRE')[0]?.price || 0,
|
||||
toPay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'RECE')[0]?.price || 0,
|
||||
oilCardPay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'OIL')[0]?.price || 0,
|
||||
receiptPay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'BACK')[0]?.price || 0,
|
||||
prePayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'PRE')[0]?.paymentStatus,
|
||||
toPayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'RECE')[0]?.paymentStatus,
|
||||
oilCardPayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'OIL')[0]?.paymentStatus,
|
||||
receiptPayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'BACK')[0]?.paymentStatus
|
||||
};
|
||||
this.tranPrice = this.i.prePay + this.i.toPay + this.i.oilCardPay + this.i.receiptPay;
|
||||
this.totalPrice = this.i.prePay + this.i.toPay + this.i.oilCardPay + this.i.receiptPay + this.otherPrice;
|
||||
this.initSF();
|
||||
|
||||
if (this.record.id > 0) this.http.get(`/user/${this.record.id}`).subscribe(res => (this.i = res));
|
||||
}
|
||||
// 运输费
|
||||
get transportation () {
|
||||
console.log(this.sf?.value)
|
||||
const value = Number(this.sf?.value?.number || 0) + Number(this.sf?.value?.number2 || 0) + Number(this.sf?.value?.number3 || 0)
|
||||
console.log( value )
|
||||
return value || 0
|
||||
}
|
||||
// 总运费
|
||||
get gross () {
|
||||
const value = Number(this.transportation || 0) + Number(this.transportation || 0)
|
||||
console.log( value )
|
||||
return value || 0
|
||||
}
|
||||
// 附加费
|
||||
get additional () {
|
||||
return 100
|
||||
this.service.request(this.service.$api_get_getFreightChangeWholeDetail, { id: this.record.id}).subscribe((res) => {
|
||||
console.log(res)
|
||||
console.log(this.i)
|
||||
console.log(this.tranPrice)
|
||||
})
|
||||
}
|
||||
initSF() {
|
||||
this.schema= {
|
||||
this.schema = {
|
||||
properties: {
|
||||
number: { type: 'number',title: '预付' ,minimum: 1, maximum: 999999999, multipleOf: 1, ui: { widgetWidth: 200 } },
|
||||
number2: { type: 'number',title: '到付' ,minimum: 1, maximum: 999999999, multipleOf: 1, ui: { widgetWidth: 200 } },
|
||||
number3: { type: 'number',title: '回单付' ,minimum: 1, maximum: 999999999, multipleOf: 1, ui: { widgetWidth: 200 } },
|
||||
name3: {
|
||||
prePay: {
|
||||
type: 'number',
|
||||
title: '预付',
|
||||
default: 0.0,
|
||||
readOnly: this.i.prePayStatus !== '3',
|
||||
ui: {
|
||||
prefix: '¥',
|
||||
widgetWidth: 200,
|
||||
precision: 2,
|
||||
change: (val: any) => this.changeNumVal()
|
||||
} as SFNumberWidgetSchema
|
||||
},
|
||||
toPay: {
|
||||
type: 'number',
|
||||
title: '到付',
|
||||
default: 0.0,
|
||||
readOnly: this.i.toPayStatus !== '3',
|
||||
ui: {
|
||||
prefix: '¥',
|
||||
widgetWidth: 200,
|
||||
precision: 2,
|
||||
change: (val: any) => this.changeNumVal()
|
||||
} as SFNumberWidgetSchema
|
||||
},
|
||||
// oilCardPay: {
|
||||
// type: 'number',
|
||||
// title: '油卡',
|
||||
// default: 0.0,
|
||||
// readOnly: this.i.oilCardPayStatus === '1' || this.i.oilCardPayStatus === '3',
|
||||
// ui: {
|
||||
// prefix: '¥',
|
||||
// widgetWidth: 200,
|
||||
// precision: 2,
|
||||
// change: (val: any) => this.changeNumVal()
|
||||
// } as SFNumberWidgetSchema
|
||||
// },
|
||||
receiptPay: {
|
||||
type: 'number',
|
||||
title: '回单付',
|
||||
default: 0.0,
|
||||
readOnly: this.i.receiptPayStatus !== '3',
|
||||
ui: {
|
||||
prefix: '¥',
|
||||
widgetWidth: 200,
|
||||
precision: 2,
|
||||
change: (val: any) => this.changeNumVal()
|
||||
} as SFNumberWidgetSchema
|
||||
},
|
||||
changeCause: {
|
||||
type: 'string',
|
||||
title: '变更原因',
|
||||
maxLength: 100,
|
||||
ui: {
|
||||
widgetWidth: 300,
|
||||
placeholder:"选填,最多不超过100字",
|
||||
widget: 'textarea',
|
||||
autosize: { minRows: 3, maxRows: 6 }
|
||||
} as SFTextareaWidgetSchema
|
||||
}
|
||||
},
|
||||
},
|
||||
required: ['name3'],
|
||||
type: 'object',
|
||||
required: ['changeCause']
|
||||
};
|
||||
this.ui = { '*': { spanLabelFixed: 100, grid: { span: 16,gutter:8 } }
|
||||
this.ui = {
|
||||
'*': {
|
||||
spanLabelFixed: 100,
|
||||
grid: { span: 16 }
|
||||
}
|
||||
};
|
||||
}
|
||||
save(value: any): void {
|
||||
console.log(this.sf.value)
|
||||
console.log(value)
|
||||
console.log(this.data)
|
||||
this.http.post(`/user/${this.record.id}`, value).subscribe(res => {
|
||||
this.msgSrv.success('保存成功');
|
||||
this.modal.close(true);
|
||||
const editItems = this.record?.mybidDetailInfo.filter((data: any) => data.receiptPayStatus === '3');
|
||||
editItems.forEach((item: any) => {
|
||||
switch (item.expenseName) {
|
||||
case '预付':
|
||||
item.price = this.sf.value.prePay;
|
||||
break;
|
||||
case '到付':
|
||||
item.price = this.sf.value.toPay;
|
||||
break;
|
||||
case '回单付':
|
||||
item.price = this.sf.value.receiptPay;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
const params = {
|
||||
id: this.record?.id,
|
||||
dtos: editItems,
|
||||
changeCause: this.sf.value.changeCause
|
||||
};
|
||||
|
||||
// this.service.request(this.service.$api_insertFreightChangeWhole, params).subscribe((res: any) => {
|
||||
// if (res) {
|
||||
// this.modal.destroy();
|
||||
// } else {
|
||||
// this.service.msgSrv.error(res.msg);
|
||||
// }
|
||||
// });
|
||||
}
|
||||
|
||||
close(): void {
|
||||
@ -97,8 +170,10 @@ export class VehicleUpdateFreightComponent implements OnInit {
|
||||
}
|
||||
/**
|
||||
* 更新数字框
|
||||
* @param value
|
||||
* @param type
|
||||
*
|
||||
*/
|
||||
changeNumVal(value: any, type: number) {}
|
||||
changeNumVal() {
|
||||
this.tranPrice = this.sf.value.prePay + this.sf.value.toPay + this.sf.value.oilCardPay + this.sf.value.receiptPay;
|
||||
this.totalPrice = this.sf.value.prePay + this.sf.value.toPay + this.sf.value.oilCardPay + this.sf.value.receiptPay + this.otherPrice;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 15:31:52
|
||||
* @LastEditTime: 2021-12-20 10:00:25
|
||||
* @LastEditTime: 2021-12-20 15:30:26
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\services\order-management.service.ts
|
||||
@ -34,6 +34,17 @@ export class OrderManagementService extends BaseService {
|
||||
$api_get_getWholeBillDetail = `/api/sdc/billOperate/getWholeBillDetail`;
|
||||
// 根据车牌号查询车辆信息
|
||||
$api_get_getCarLicenseListByCarNo= `/api/mdc/cuc/carLicenseAudit/operate/getCarLicenseListByCarNo`;
|
||||
|
||||
// 查询大宗订单列表
|
||||
$api_get_listBulkPage = `/api/sdc/billOperate/listBulkPage`;
|
||||
// 查看运费变更记录详情-整车
|
||||
$api_get_getChangeRecordWholeDetail = `/api/sdc/billFreightChangeRecord/getChangeRecordWholeDetail`;
|
||||
// 根据订单ID查看运费变更申请记录
|
||||
$api_get_listChangeApply = `/api/sdc/billFreightChangeApplication/listChangeApply`;
|
||||
// 变更运费页面-整车-整车
|
||||
$api_get_getFreightChangeWholeDetail = `/api/sdc/billFreightChangeApplication/getFreightChangeWholeDetail`;
|
||||
// 订单申请撤销
|
||||
$api_get_revokeChangeRecord = `/api/sdc/billFreightChangeApplication/revokeChangeRecord`;
|
||||
constructor(public injector: Injector) {
|
||||
super(injector)
|
||||
}
|
||||
|
||||
@ -1,24 +0,0 @@
|
||||
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { SupplyManagementBulkDetailComponent } from './bulk-detail.component';
|
||||
|
||||
describe('SupplyManagementBulkDetailComponent', () => {
|
||||
let component: SupplyManagementBulkDetailComponent;
|
||||
let fixture: ComponentFixture<SupplyManagementBulkDetailComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ SupplyManagementBulkDetailComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(SupplyManagementBulkDetailComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@ -1,146 +0,0 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-13 15:24:41
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\components\bulk-detail\bulk-detail.component.ts
|
||||
*/
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { STColumn } from '@delon/abc/st';
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||
import { SupplyManagementAddDriversComponent } from '../add-drivers/add-drivers.component';
|
||||
import { SupplyManagementService } from '../../services/supply-management.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-supply-management-bulk-detail',
|
||||
templateUrl: './bulk-detail.component.html',
|
||||
styleUrls: ['./bulk-detail.component.less']
|
||||
})
|
||||
export class SupplyManagementBulkDetailComponent implements OnInit {
|
||||
isVisibleView = false
|
||||
id = this.route.snapshot.params.id;
|
||||
i: any;
|
||||
logColumns: STColumn[] = [
|
||||
{ title: '内容', index: 'theme' },
|
||||
{ title: '操作人', index: 'operationUserPhone' },
|
||||
{ title: '操作时间', index: ' createTime' },
|
||||
];
|
||||
columnsFloatView: STColumn[] = [
|
||||
{ title: '司机姓名', index: 'theme' },
|
||||
{ title: '手机号', index: 'operationUserPhone' },
|
||||
{ title: '车队长', index: ' createTime' },
|
||||
{ title: '车牌号', index: ' createTime' },
|
||||
];
|
||||
driverColums: STColumn[] = [
|
||||
{ title: '司机姓名', index: 'theme' },
|
||||
{ title: '手机号', index: 'operationUserPhone' },
|
||||
{ title: '车牌号', index: ' createTime' },
|
||||
{ title: '承运次数', index: 'operationUserPhone' },
|
||||
{ title: '承运数量', index: ' createTime' },
|
||||
{
|
||||
title: '操作',
|
||||
fixed: 'right',
|
||||
width: '200px',
|
||||
className: 'text-center',
|
||||
buttons: [
|
||||
{
|
||||
text: '移除',
|
||||
click: (_record) => this.delDiver(_record),
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
||||
dataList: any;
|
||||
constructor(
|
||||
private route: ActivatedRoute,
|
||||
private msgSrv: NzMessageService,
|
||||
private service: SupplyManagementService,
|
||||
private modal: NzModalService,
|
||||
private router: Router,private ar: ActivatedRoute
|
||||
) {
|
||||
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.getDetailList();
|
||||
}
|
||||
// 获取录单员
|
||||
getDetailList() {
|
||||
const params = {
|
||||
id: this.id
|
||||
};
|
||||
this.service.request(`${this.service.$api_get_getBulkDetail}`, params).subscribe((res) => {
|
||||
console.log(res)
|
||||
this.dataList = res
|
||||
})
|
||||
}
|
||||
/**
|
||||
* 移除司机
|
||||
*/
|
||||
delDiver(item: any) {
|
||||
const { id } = item;
|
||||
this.modal.confirm({
|
||||
nzTitle: '<i>删除确认</i>',
|
||||
nzContent: `请仔细核对,避免误操作!<br>是否删除?</br>`,
|
||||
nzOnOk: () => {
|
||||
// this.service.http.post(this.service.$api_del_driver, { id }).subscribe((res) => {
|
||||
// if (res) {
|
||||
// this.service.msgSrv.success('数据删除成功!');
|
||||
// // this.st1.reload();
|
||||
// } else {
|
||||
// this.service.msgSrv.error('删除失败!');
|
||||
// }
|
||||
// });
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 指派熟车
|
||||
*/
|
||||
assignedCar() {
|
||||
const modalRef = this.modal.create({
|
||||
nzTitle: '指派熟车',
|
||||
nzWidth: '90%',
|
||||
nzContent: SupplyManagementAddDriversComponent,
|
||||
nzComponentParams: {
|
||||
i: this.i,
|
||||
},
|
||||
nzFooter: null,
|
||||
});
|
||||
}
|
||||
|
||||
goBack() {
|
||||
window.history.go(-1);
|
||||
}
|
||||
// 修改货源
|
||||
modification() {
|
||||
this.router.navigate(['/supply-management/bulk-amend', this.id], {
|
||||
queryParams: {
|
||||
sta: 3
|
||||
},
|
||||
})
|
||||
}
|
||||
// 再下一单
|
||||
nextOrder() {
|
||||
this.router.navigate(['/supply-management/bulk-amend', this.id], {
|
||||
queryParams: {
|
||||
sta: 4
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
handleCancel() {
|
||||
this.isVisibleView = false
|
||||
}
|
||||
handleOK() {
|
||||
|
||||
}
|
||||
NowAssign() {
|
||||
this.isVisibleView = true
|
||||
}
|
||||
}
|
||||
@ -17,7 +17,7 @@
|
||||
</sv-title>
|
||||
<sv-title>
|
||||
<div class="">
|
||||
<a class="btn-size" (click)="modification()">修改单价</a>
|
||||
<a class="btn-size" (click)="modification()">修改货源</a>
|
||||
<a class="btn-size m-lg mr-lg">取消货源</a>
|
||||
<a class="btn-size" (click)="nextOrder()">再下一单</a>
|
||||
</div>
|
||||
@ -48,6 +48,7 @@
|
||||
<p>装货地:{{item?.detailedAddress}}</p>
|
||||
<p>联系人:{{item?.appUserName}}/{{item?.contractTelephone}}</p>
|
||||
<p>发货日期:{{item?.createTime}}</p>
|
||||
|
||||
</div>
|
||||
<div *ngIf="item.type === 2 || item.type === '2'">
|
||||
<p>卸货地:{{item?.detailedAddress}}</p>
|
||||
@ -59,11 +60,10 @@
|
||||
</div>
|
||||
<div nz-col nzSpan="5">
|
||||
<div class="source-info bdr bdl pl-md">
|
||||
<h3 style="font-weight: 700;">货物信息</h3>
|
||||
<div *ngFor="let item of dataList?.goodsInfoVOList; let i = index">
|
||||
<h3 *ngIf="i === 0" style="font-weight: 700;">货物信息</h3>
|
||||
<p>货物名称:{{item?.goodsName}}</p>
|
||||
<p>货物数量:{{item?.weight}}吨/{{item?.volume}}立方</p>
|
||||
<p>剩余:{{item?.weight}}吨/{{item?.volume}}立方</p>
|
||||
<p>用车需求:{{item?.vehicleDemand}}</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -73,21 +73,25 @@
|
||||
<h3 style="font-weight: 700;">承运信息</h3>
|
||||
<p>网络货运人:{{dataList?.carrierInformationVO?.enterpriseInfoName}}</p>
|
||||
<p>服务类型:{{dataList?.carrierInformationVO?.serviceType === 1 ? '抢单' : '指派'}}</p>
|
||||
<p><a href="javascript:;" (click)="NowAssign()">当前指派</a></p>
|
||||
<p>司机姓名:{{dataList?.carrierInformationVO?.driverName}}</p>
|
||||
<p>手机号:{{dataList?.carrierInformationVO?.driverTelephone}}</p>
|
||||
<p>车牌号:{{dataList?.carrierInformationVO?.driverLicensePlate}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div nz-col nzSpan="5">
|
||||
<div class="source-info bdr pl-md">
|
||||
<h3 style="font-weight: 700;">关联运单</h3>
|
||||
<p>待发车 ({{dataList?.goodsInfoList?.goodsName}})</p>
|
||||
<p>运输中 ({{dataList?.goodsInfoList?.goodsName}})</p>
|
||||
<p>待签收 ({{dataList?.goodsInfoList?.goodsName}})</p>
|
||||
<p>已完成 ({{dataList?.goodsInfoList?.goodsName}})</p>
|
||||
<p>已取消 ({{dataList?.goodsInfoList?.goodsName}})</p>
|
||||
<h3 style="font-weight: 700;">服务信息</h3>
|
||||
<p>货物价值:{{dataList?.goodsInfoList?.goodsName}}</p>
|
||||
<p>保价费金额:{{dataList?.goodsInfoList?.goodsName}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="source-info pl-md">
|
||||
<h3 style="font-weight: 700;">补充信息</h3>
|
||||
<p>{{dataList?.supplementaryInformationVO?.stateReceipt === 2 ? '不需要回单' : '需要回单'}}</p>
|
||||
<p>联系人:{{dataList?.supplementaryInformationVO?.receiptUserId}}</p>
|
||||
<p>联系电话:{{dataList?.supplementaryInformationVO?.remarks}}</p>
|
||||
<p>所在地区:{{dataList?.supplementaryInformationVO?.remarks}}</p>
|
||||
<p>详细地址:{{dataList?.supplementaryInformationVO?.receiptAddress}}</p>
|
||||
<p>备注:{{dataList?.supplementaryInformationVO?.remarks}}</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -96,15 +100,18 @@
|
||||
<div class="freight-info-box">
|
||||
<h3 style="font-weight: 700;">运费信息</h3>
|
||||
<div class="text-right">
|
||||
<p style="color: #f9b523;">到货后15天内支付运费</p>
|
||||
<p>以发货为准,保留小数</p>
|
||||
|
||||
<p>预付:{{dataList?.shippingInformationVO?.prePay | currency: '¥' }}</p>
|
||||
<p>油卡:{{dataList?.shippingInformationVO?.oilCardPay | currency: '¥'}}</p>
|
||||
<p>到付:{{dataList?.shippingInformationVO?.toPay | currency: '¥'}}</p>
|
||||
<p>回单付:{{dataList?.shippingInformationVO?.receiptPay | currency: '¥'}}</p>
|
||||
<p>保险费:{{dataList?.shippingInformationVO?.insuranceFee | currency: '¥'}}</p>
|
||||
<p>附加费保险费:{{dataList?.shippingInformationVO?.appendFee | currency: '¥'}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div class="freight-info-box" nz-row>
|
||||
<div nz-col nzSpan="24">
|
||||
<h3 class="text-right"><label>单价 :</label> <span class="text-error-dark text-xl" style="color: red;">{{dataList?.freightPrice }}</span>元/吨</h3>
|
||||
<h3 class="text-right"><label>总计 :</label> <span class="text-error-dark text-xl">{{dataList?.shippingInformationVO?.totalFee | currency: '¥' }}</span></h3>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@ -117,18 +124,3 @@
|
||||
</nz-card>
|
||||
</div>
|
||||
</nz-card>
|
||||
|
||||
<nz-modal [(nzVisible)]="isVisibleView" [nzWidth]="600" [nzFooter]="nzModalFooterview" nzTitle="当前指派" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||
<ng-container *nzModalContent>
|
||||
<st
|
||||
#stFloatView
|
||||
[data]="i?.auditRecordList"
|
||||
[columns]="columnsFloatView"
|
||||
[page]="{ show: false, showSize: false }"
|
||||
>
|
||||
</st>
|
||||
</ng-container>
|
||||
<ng-template #nzModalFooterview>
|
||||
<button nz-button nzType="default" (click)="handleCancel()">取消</button>
|
||||
</ng-template>
|
||||
</nz-modal>
|
||||
@ -0,0 +1,24 @@
|
||||
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
|
||||
import { SupplyManagementVehicleDetailComponent } from './vehicle-detail.component';
|
||||
|
||||
describe('SupplyManagementVehicleDetailComponent', () => {
|
||||
let component: SupplyManagementVehicleDetailComponent;
|
||||
let fixture: ComponentFixture<SupplyManagementVehicleDetailComponent>;
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ SupplyManagementVehicleDetailComponent ]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
beforeEach(() => {
|
||||
fixture = TestBed.createComponent(SupplyManagementVehicleDetailComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
|
||||
it('should create', () => {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@ -0,0 +1,80 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-09 20:54:28
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\components\vehicle-detail\vehicle-detail.component.ts
|
||||
*/
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { STColumn } from '@delon/abc/st';
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { SupplyManagementService } from '../../services/supply-management.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-supply-management-vehicle-detail',
|
||||
templateUrl: './vehicle-detail.component.html',
|
||||
styleUrls: ['./vehicle-detail.component.less']
|
||||
})
|
||||
export class SupplyManagementVehicleDetailComponentOld implements OnInit {
|
||||
|
||||
id = this.route.snapshot.params.id;
|
||||
i: any;
|
||||
dataList: any;
|
||||
logColumns: STColumn[] = [
|
||||
{ title: '内容', index: 'theme' },
|
||||
{ title: '操作人', index: 'operationUserPhone' },
|
||||
{ title: '操作时间', index: ' createTime' },
|
||||
];
|
||||
|
||||
constructor(
|
||||
private route: ActivatedRoute,
|
||||
private msgSrv: NzMessageService,
|
||||
private service: SupplyManagementService,
|
||||
private router: Router,private ar: ActivatedRoute
|
||||
) {
|
||||
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
console.log(this.id)
|
||||
if(this.id) {
|
||||
this.getDetailList(this.id)
|
||||
}
|
||||
}
|
||||
|
||||
// 获取录单员
|
||||
getDetailList(id: any) {
|
||||
const params = {
|
||||
id: id
|
||||
};
|
||||
this.service.request(`${this.service.$api_get_getCompleteVehicleDetail}`, params).subscribe((res) => {
|
||||
console.log(res)
|
||||
this.dataList = res
|
||||
})
|
||||
}
|
||||
// 修改货源
|
||||
modification() {
|
||||
this.router.navigate(['/supply-management/vehicle-amend', this.id], {
|
||||
queryParams: {
|
||||
sta: 1
|
||||
},
|
||||
})
|
||||
}
|
||||
// 再下一单
|
||||
nextOrder() {
|
||||
this.router.navigate(['/supply-management/vehicle-amend', this.id], {
|
||||
queryParams: {
|
||||
sta: 2
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
goBack() {
|
||||
window.history.go(-1);
|
||||
}
|
||||
}
|
||||
@ -1,126 +1,168 @@
|
||||
<page-header-wrapper [title]="''" [logo]="logo">
|
||||
<div *ngIf="i">
|
||||
<page-header-wrapper [title]="''" [logo]="logo" [content]="headerContent">
|
||||
<ng-template #logo>
|
||||
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
|
||||
<i nz-icon nzType="left" nzTheme="outline"></i>
|
||||
</button>
|
||||
</ng-template>
|
||||
</page-header-wrapper>
|
||||
<nz-card>
|
||||
<ng-template #headerContent>
|
||||
<div class="mb-xs" nz-row>
|
||||
<button nz-button nzType="primary" nzSize="small" nzDanger>{{i?.resourceStatusLabel}}</button>
|
||||
<h4 class="ml-md">货源编码 : {{ i?.resourceCode }}</h4>
|
||||
</div>
|
||||
<div nz-row>
|
||||
<div nz-col nzSpan="6">
|
||||
<sv-container class="bdr">
|
||||
<sv label="货源编号" col="1">{{ dataList?.resourceCode }}</sv>
|
||||
<sv-title class="text-center text-lg">
|
||||
<span *ngIf="dataList?.resourceType === 1">待接单</span>
|
||||
<span *ngIf="dataList?.resourceType === 2">已接单</span>
|
||||
<span *ngIf="dataList?.resourceType === 3">已取消</span>
|
||||
</sv-title>
|
||||
<sv-title>
|
||||
<div class="">
|
||||
<a class="btn-size" (click)="modification()">修改货源</a>
|
||||
<a class="btn-size m-lg mr-lg">取消货源</a>
|
||||
<a class="btn-size" (click)="nextOrder()">再下一单</a>
|
||||
<div nz-col nzSpan="14" class="text-grey-darker">网络货运人:{{i?.carrierInformationVO?.enterpriseInfoName}}</div>
|
||||
<div nz-col nzSpan="10">
|
||||
<button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'">取消货源</button>
|
||||
<button nz-button (click)="assignedCar(i)"
|
||||
*ngIf="i?.resourceStatus === '1' && i?.serviceType === '2'">重新指派</button>
|
||||
<button nz-button (click)="updateGoodsSource(i)" *ngIf="i?.resourceStatus === '1'">修改货源</button>
|
||||
<button nz-button nzType="primary" nzGhost (click)="placeOrder(i)">再下一单</button>
|
||||
</div>
|
||||
</sv-title>
|
||||
</sv-container>
|
||||
</div>
|
||||
<div nz-col nzSpan="16" class="approval-status">
|
||||
<nz-steps style="width: 80%; margin: 0 auto" [nzLabelPlacement]="'vertical'">
|
||||
<nz-step nzStatus="finish" nzIcon="user" [nzDescription]="i?.createAt" nzTitle="下单"></nz-step>
|
||||
<nz-step nzStatus="finish" nzIcon="user" nzTitle="完结"></nz-step>
|
||||
<div class="mt-sm mb-sm" nz-row>
|
||||
<div>
|
||||
<b>总费用:<span class="text-red-light text-md">{{totalExpensePrice | currency}}</span></b>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div sv-container *ngIf="i">
|
||||
<sv label="外部货源号"><a>{{ i?.externalResourceCode }} <i class="mr-xs" nz-icon nzType="edit" nzTheme="outline"
|
||||
(click)="editEnternalSn(i)"></i></a></sv>
|
||||
<sv label="项目">{{i?.enterpriseProjectId}}</sv>
|
||||
<sv label="录单员">{{i?.createUserId}}</sv>
|
||||
<sv label="调度员">{{i?.dispatchName}} 18100000000 </sv>
|
||||
<sv label="服务类型">{{i?.serviceTypeLabel}} </sv>
|
||||
</div>
|
||||
</ng-template>
|
||||
</page-header-wrapper>
|
||||
<nz-card title="货源进度">
|
||||
<div class="approval-status">
|
||||
<div style="width: 60%; margin: 0 auto">
|
||||
<nz-steps [nzLabelPlacement]="'vertical'">
|
||||
<nz-step [nzStatus]="i?.resourceStatus !== '1'?'finish':'process'" nzIcon="solution"
|
||||
[nzDescription]="i?.createAt" nzTitle="下单"></nz-step>
|
||||
<nz-step *ngIf="i?.resourceStatus === '1' || i?.resourceStatus === '2' "
|
||||
[nzStatus]="i?.resourceStatus=== '1'? 'wait':'finish'" nzIcon="file-done" [nzTitle]="'接单'"></nz-step>
|
||||
<nz-step nzStatus="finish" nzIcon="close-circle" nzTitle="取消货源" *ngIf="i?.resourceStatus === '3'"></nz-step>
|
||||
</nz-steps>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div sv-container >
|
||||
<sv label="项目名称">{{ dataList?.enterpriseProjectId }}</sv>
|
||||
<sv label="外部货源号">{{ dataList?.externalResourceCode }}</sv>
|
||||
<sv label="录单员">{{ dataList?.enterpriseProjectId }}</sv>
|
||||
<sv label="调度员">{{ dataList?.dispatchName }}</sv>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div nz-row>
|
||||
<div nz-col nzSpan="6">
|
||||
<div class="source-info">
|
||||
<div *ngFor="let item of dataList?.unLoadingPlaceVOList; let i = index">
|
||||
<h3 *ngIf="i === 0" style="font-weight: 700;">装卸货信息</h3>
|
||||
<div *ngIf="item?.type === 1 || item?.type === '1'">
|
||||
<p>装货地:{{item?.detailedAddress}}</p>
|
||||
</nz-card>
|
||||
<nz-card nzTitle="装货卸货信息 (一装一卸2)">
|
||||
<div nz-row [nzGutter]="24">
|
||||
<div nz-col [nzSpan]="12">
|
||||
<div class="handling-info p-md">
|
||||
<div class="flex" *ngFor="let item of i?.unLoadingPlaceVOList">
|
||||
<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>
|
||||
<p>发货日期:{{item?.createTime}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<p class="time-info">装货时间:{{i?.loadingTime}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div nz-col [nzSpan]="12">
|
||||
<div class="handling-info p-md">
|
||||
<div class="flex" *ngFor="let item of i?.unLoadingPlaceVOList">
|
||||
<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>
|
||||
<p class="time-info">卸货时间:{{i?.unloadingTime}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</nz-card>
|
||||
|
||||
<nz-card nzTitle="基本信息">
|
||||
<sv-container col="2">
|
||||
<sv-title>货物信息</sv-title>
|
||||
<ng-container *ngFor="let item of i?.goodsInfoVOList">
|
||||
<sv label="货物名称">
|
||||
{{item.goodsName}}
|
||||
</sv>
|
||||
<sv label="货物数量">
|
||||
{{item.weight}}顿,{{item.volume}}方,{{item.number}}件
|
||||
</sv>
|
||||
</ng-container>
|
||||
</sv-container>
|
||||
<sv-container class="mt-md">
|
||||
<sv-title>承运信息</sv-title>
|
||||
<sv label="司机姓名">
|
||||
{{i?.carrierInformationVO?.driverName}}
|
||||
</sv>
|
||||
<sv label="手机号">
|
||||
{{i?.carrierInformationVO?.driverTelephone}}
|
||||
</sv>
|
||||
<sv label="车牌号">
|
||||
{{i?.carrierInformationVO?.driverLicensePlate}}
|
||||
</sv>
|
||||
</sv-container>
|
||||
</nz-card>
|
||||
|
||||
<nz-card nzTitle="服务信息">
|
||||
<sv-container>
|
||||
<sv label="服务类型">
|
||||
{{i?.carrierInformationVO?.serviceTypeLabel}}
|
||||
</sv>
|
||||
<sv label="货物价值">
|
||||
{{i?.goodsValue}}
|
||||
</sv>
|
||||
<sv label="保价费金额">
|
||||
{{i?.insuranceAmount |currency}} 元
|
||||
</sv>
|
||||
</sv-container>
|
||||
</nz-card>
|
||||
<nz-card nzTitle="运费信息(到货后15天内支付运费)">
|
||||
<st [data]="i?.expenseList" [columns]="expenseColumns" [page]="{show:false}">
|
||||
<ng-template st-row="total" let-item>
|
||||
<div>
|
||||
{{(item.price * item.rate) | currency}}
|
||||
<span>(含附加费)</span>
|
||||
</div>
|
||||
<div *ngIf="item.type === 2 || item.type === '2'">
|
||||
<p>卸货地:{{item?.detailedAddress}}</p>
|
||||
<p>联系人:{{item?.appUserName}}/{{item?.contractTelephone}}</p>
|
||||
<p>卸货日期:{{item?.modifyTime}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div nz-col nzSpan="5">
|
||||
<div class="source-info bdr bdl pl-md">
|
||||
<div *ngFor="let item of dataList?.goodsInfoVOList; let i = index">
|
||||
<h3 *ngIf="i === 0" style="font-weight: 700;">货物信息</h3>
|
||||
<p>货物名称:{{item?.goodsName}}</p>
|
||||
<p>货物数量:{{item?.weight}}吨/{{item?.volume}}立方</p>
|
||||
<p>用车需求:{{item?.vehicleDemand}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div nz-col nzSpan="5">
|
||||
<div class="source-info bdr pl-md">
|
||||
<h3 style="font-weight: 700;">承运信息</h3>
|
||||
<p>网络货运人:{{dataList?.carrierInformationVO?.enterpriseInfoName}}</p>
|
||||
<p>服务类型:{{dataList?.carrierInformationVO?.serviceType === 1 ? '抢单' : '指派'}}</p>
|
||||
<p>司机姓名:{{dataList?.carrierInformationVO?.driverName}}</p>
|
||||
<p>手机号:{{dataList?.carrierInformationVO?.driverTelephone}}</p>
|
||||
<p>车牌号:{{dataList?.carrierInformationVO?.driverLicensePlate}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div nz-col nzSpan="5">
|
||||
<div class="source-info bdr pl-md">
|
||||
<h3 style="font-weight: 700;">服务信息</h3>
|
||||
<p>货物价值:{{dataList?.goodsInfoList?.goodsName}}</p>
|
||||
<p>保价费金额:{{dataList?.goodsInfoList?.goodsName}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="source-info pl-md">
|
||||
<h3 style="font-weight: 700;">补充信息</h3>
|
||||
<p>{{dataList?.supplementaryInformationVO?.stateReceipt === 2 ? '不需要回单' : '需要回单'}}</p>
|
||||
<p>联系人:{{dataList?.supplementaryInformationVO?.receiptUserId}}</p>
|
||||
<p>联系电话:{{dataList?.supplementaryInformationVO?.remarks}}</p>
|
||||
<p>所在地区:{{dataList?.supplementaryInformationVO?.remarks}}</p>
|
||||
<p>详细地址:{{dataList?.supplementaryInformationVO?.receiptAddress}}</p>
|
||||
<p>备注:{{dataList?.supplementaryInformationVO?.remarks}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div nz-row>
|
||||
<div class="freight-info-box">
|
||||
<h3 style="font-weight: 700;">运费信息</h3>
|
||||
<div class="text-right">
|
||||
<p>预付:{{dataList?.shippingInformationVO?.prePay | currency: '¥' }}</p>
|
||||
<p>油卡:{{dataList?.shippingInformationVO?.oilCardPay | currency: '¥'}}</p>
|
||||
<p>到付:{{dataList?.shippingInformationVO?.toPay | currency: '¥'}}</p>
|
||||
<p>回单付:{{dataList?.shippingInformationVO?.receiptPay | currency: '¥'}}</p>
|
||||
<p>保险费:{{dataList?.shippingInformationVO?.insuranceFee | currency: '¥'}}</p>
|
||||
<p>附加费保险费:{{dataList?.shippingInformationVO?.appendFee | currency: '¥'}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div class="freight-info-box" nz-row>
|
||||
</ng-template>
|
||||
</st>
|
||||
<div class="freight-info-box mt-md" nz-row>
|
||||
<div nz-col nzSpan="24">
|
||||
<h3 class="text-right"><label>总计 :</label> <span class="text-error-dark text-xl">{{dataList?.shippingInformationVO?.totalFee | currency: '¥' }}</span></h3>
|
||||
</div>
|
||||
|
||||
<h3>
|
||||
<label>总计 :</label>
|
||||
<span class="text-error-dark text-xl">
|
||||
{{totalExpensePrice | currency}}
|
||||
</span>
|
||||
<span>(运费¥3500.00含附加运费¥191.98)</span>
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div nz-row>
|
||||
<nz-card nzTitle="操作日志" style="width: 100%;">
|
||||
</nz-card>
|
||||
<nz-card nzTitle="补充信息">
|
||||
<sv-container>
|
||||
<sv label="是否回单">
|
||||
{{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}}
|
||||
</sv>
|
||||
<sv label="回单类型">
|
||||
{{i?.supplementaryInformationVO?.receiptTypeLabel}}
|
||||
</sv>
|
||||
<sv label="所在地区">
|
||||
{{i?.supplementaryInformationVO?.area}}
|
||||
</sv>
|
||||
<sv label="详细地址">
|
||||
{{i?.supplementaryInformationVO?.address}}
|
||||
</sv>
|
||||
<sv label="备注">
|
||||
{{i?.supplementaryInformationVO?.remarks}}
|
||||
</sv>
|
||||
</sv-container>
|
||||
</nz-card>
|
||||
<nz-card nzTitle="操作日志">
|
||||
<st #st [data]="i?.auditRecordList" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||
</st>
|
||||
</nz-card>
|
||||
</div>
|
||||
</nz-card>
|
||||
</div>
|
||||
|
||||
@ -1,37 +1,84 @@
|
||||
:host{
|
||||
.btn-size{
|
||||
font-size: 14px;
|
||||
}
|
||||
.bdr{
|
||||
border-right: 1px solid #ccc;
|
||||
}
|
||||
.bdl{
|
||||
border-left: 1px solid #ccc;
|
||||
}
|
||||
.title{
|
||||
font-size: 26;
|
||||
font-weight: bold;
|
||||
}
|
||||
.source-info{
|
||||
p{
|
||||
:host {
|
||||
.source-info {
|
||||
min-height: 210px;
|
||||
|
||||
p {
|
||||
margin-bottom: .5em;
|
||||
}
|
||||
}
|
||||
.freight-info-box{
|
||||
width: 95%;
|
||||
|
||||
.btn-size {
|
||||
font-size: 14px;
|
||||
}
|
||||
.freigth-label{
|
||||
|
||||
.bdr {
|
||||
border-right: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.bdl {
|
||||
border-left: 1px solid #ccc;
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: bold;
|
||||
font-size: 26;
|
||||
}
|
||||
|
||||
.freight-info-box {
|
||||
width: 95%;
|
||||
|
||||
p {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
}
|
||||
|
||||
.freigth-label {
|
||||
display: inline-block;
|
||||
width: 50px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
::ng-deep{
|
||||
.approval-status{
|
||||
.ant-steps{
|
||||
::ng-deep {
|
||||
.approval-status {
|
||||
.ant-steps {
|
||||
width: 70%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.handling-info {
|
||||
min-height: 176px;
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -7,7 +7,7 @@ describe('SupplyManagementVehicleDetailComponent', () => {
|
||||
|
||||
beforeEach(waitForAsync(() => {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [ SupplyManagementVehicleDetailComponent ]
|
||||
declarations: [SupplyManagementVehicleDetailComponent]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
|
||||
@ -1,17 +1,12 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-09 20:54:28
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\components\vehicle-detail\vehicle-detail.component.ts
|
||||
*/
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { STColumn } from '@delon/abc/st';
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||
import { SupplyManagementService } from '../../services/supply-management.service';
|
||||
import { SupplyManagementAssignedCarComponent } from '../assigned-car/assigned-car.component';
|
||||
import { SupplyManagementUpdateExternalSnComponent } from '../update-external-sn/update-external-sn.component';
|
||||
|
||||
@Component({
|
||||
selector: 'app-supply-management-vehicle-detail',
|
||||
@ -22,59 +17,144 @@ export class SupplyManagementVehicleDetailComponent implements OnInit {
|
||||
|
||||
id = this.route.snapshot.params.id;
|
||||
i: any;
|
||||
dataList: any;
|
||||
logColumns: STColumn[] = [
|
||||
{ title: '内容', index: 'theme' },
|
||||
{ title: '操作人', index: 'operationUserPhone' },
|
||||
{ title: '操作时间', index: ' createTime' },
|
||||
];
|
||||
serviceType: any = {
|
||||
1: '抢单',
|
||||
2: '指派'
|
||||
}
|
||||
status: any = { 1: '待接单', 2: '已接单', 3: '已取消' };
|
||||
totalExpensePrice = 0;
|
||||
expenseColumns: STColumn[] = [
|
||||
{
|
||||
title: '款项',
|
||||
width: '150px',
|
||||
className: 'text-center',
|
||||
index: 'expenseName'
|
||||
},
|
||||
{
|
||||
title: '总费用(元)',
|
||||
width: '150px',
|
||||
className: 'text-center',
|
||||
render: 'total'
|
||||
},
|
||||
{
|
||||
title: '协议金额(元)',
|
||||
width: '150px',
|
||||
className: 'text-center',
|
||||
index: 'price'
|
||||
},
|
||||
];
|
||||
|
||||
constructor(
|
||||
private route: ActivatedRoute,
|
||||
private msgSrv: NzMessageService,
|
||||
private service: SupplyManagementService,
|
||||
private router: Router,private ar: ActivatedRoute
|
||||
public modal: NzModalService,
|
||||
public router: Router
|
||||
) {
|
||||
|
||||
}
|
||||
|
||||
ngOnInit(): void {
|
||||
console.log(this.id)
|
||||
if(this.id) {
|
||||
this.getDetailList(this.id)
|
||||
}
|
||||
this.getGoodsSourceDetail()
|
||||
}
|
||||
|
||||
// 获取录单员
|
||||
getDetailList(id: any) {
|
||||
const params = {
|
||||
id: id
|
||||
};
|
||||
this.service.request(`${this.service.$api_get_getCompleteVehicleDetail}`, params).subscribe((res) => {
|
||||
console.log(res)
|
||||
this.dataList = res
|
||||
getGoodsSourceDetail() {
|
||||
this.service.request(this.service.$api_get_getCompleteVehicleDetail, { id: this.id }).subscribe(res => {
|
||||
const expenseList = res?.expenseList || [];
|
||||
this.totalExpensePrice = 0;
|
||||
expenseList.forEach((e: any) => {
|
||||
this.totalExpensePrice += e?.price * e?.rate;
|
||||
});
|
||||
this.i = { ...res, totalExpensePrice: this.totalExpensePrice };
|
||||
|
||||
})
|
||||
}
|
||||
// 修改货源
|
||||
modification() {
|
||||
this.router.navigate(['/supply-management/vehicle-amend', this.id], {
|
||||
/**
|
||||
* 修改货源
|
||||
*/
|
||||
updateGoodsSource(record: any) {
|
||||
this.router.navigate(['./pbg/onecar-publish'], {
|
||||
queryParams: {
|
||||
sta: 1
|
||||
},
|
||||
id: record?.id,
|
||||
type: 'edit'
|
||||
}
|
||||
})
|
||||
}
|
||||
// 再下一单
|
||||
nextOrder() {
|
||||
this.router.navigate(['/supply-management/vehicle-amend', this.id], {
|
||||
|
||||
/**
|
||||
* 取消货源
|
||||
*/
|
||||
cancleGoodsSource() {
|
||||
this.modal.confirm({
|
||||
nzTitle: '<b>确定取消货源吗?</b>',
|
||||
nzContent: `<b>取消后不可恢复,谨慎操作</b>`,
|
||||
nzOnOk: () =>
|
||||
this.service.msgSrv.success('操作成功!')
|
||||
// this.service.request(this.service.$api_cancle_goods_source, { id: this.i.id }).subscribe((res) => {
|
||||
// if (res === true) {
|
||||
// this.service.msgSrv.success('操作成功!');
|
||||
// this.getGoodsSourceDetail();
|
||||
// }
|
||||
// }),
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
*再下一单
|
||||
* @param record
|
||||
*/
|
||||
placeOrder(record: any) {
|
||||
this.router.navigate(['./pbg/onecar-publish'], {
|
||||
queryParams: {
|
||||
sta: 2
|
||||
},
|
||||
id: record?.id,
|
||||
type: 'add'
|
||||
}
|
||||
})
|
||||
}
|
||||
/**
|
||||
* 编辑外部货源号
|
||||
* @param item st当前行对象
|
||||
*/
|
||||
editEnternalSn(item: any) {
|
||||
const modalRef = this.modal.create({
|
||||
nzWidth: '400px',
|
||||
nzContent: SupplyManagementUpdateExternalSnComponent,
|
||||
nzComponentParams: {
|
||||
orderObject: item,
|
||||
},
|
||||
nzFooter: null,
|
||||
nzClosable: false
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新指派
|
||||
*/
|
||||
assignedCar(item: any) {
|
||||
const modalRef = this.modal.create({
|
||||
nzTitle: '指派熟车',
|
||||
nzWidth: '1200px',
|
||||
nzContent: SupplyManagementAssignedCarComponent,
|
||||
nzComponentParams: {
|
||||
i: item,
|
||||
},
|
||||
nzFooter: null,
|
||||
|
||||
});
|
||||
modalRef.afterClose.subscribe((result) => {
|
||||
if (result) {
|
||||
this.getGoodsSourceDetail();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
goBack() {
|
||||
window.history.go(-1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -83,13 +83,13 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
||||
} as SFSelectWidgetSchema,
|
||||
},
|
||||
goodsName: {
|
||||
type: 'string',
|
||||
title: '货物名称',
|
||||
|
||||
type: 'string',
|
||||
default: '',
|
||||
ui: {
|
||||
widget: 'dict-select',
|
||||
// params: { dictKey: 'GoodsName' },
|
||||
placeholder: '请选择',
|
||||
widget: 'select',
|
||||
// asyncData: () =>[]
|
||||
|
||||
} as SFSelectWidgetSchema,
|
||||
},
|
||||
loadingPlace: {
|
||||
@ -280,7 +280,7 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
||||
{
|
||||
text: '取消货源',
|
||||
// iif: item => item.auditStatus === 1 || item.auditStatus === 2,
|
||||
// click: (_record) => this.delOne(_record),
|
||||
click: (_record) => this.cancleGoodsSource(_record),
|
||||
},
|
||||
{
|
||||
text: '再下一单',
|
||||
@ -288,7 +288,7 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
||||
},
|
||||
{
|
||||
text: '重新指派',
|
||||
click: (_record) => this.assignedCar(_record),
|
||||
// click: (_record) => this.assignedCar(_record),
|
||||
// iif: item => item.auditStatus === 2,
|
||||
},
|
||||
],
|
||||
@ -430,6 +430,23 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
||||
sta: 2
|
||||
},
|
||||
})
|
||||
}
|
||||
/**
|
||||
* 取消货源
|
||||
*/
|
||||
cancleGoodsSource(record: any) {
|
||||
this.modal.confirm({
|
||||
nzTitle: '<b>确定取消货源吗?</b>',
|
||||
nzContent: `<b>取消后不可恢复,谨慎操作</b>`,
|
||||
nzOnOk: () =>
|
||||
this.service.request(this.service.$api_cancle_goods_source, [record.id]).subscribe((res) => {
|
||||
if (res === true) {
|
||||
this.service.msgSrv.success('操作成功!');
|
||||
this.st?.reload();
|
||||
this.getGoodsSourceStatistical();
|
||||
}
|
||||
}),
|
||||
})
|
||||
}
|
||||
// 获取货源状态统计
|
||||
getGoodsSourceStatistical() {
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-14 20:09:41
|
||||
* @LastEditTime: 2021-12-20 14:26:54
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\services\supply-management.service.ts
|
||||
@ -13,6 +13,8 @@ import { BaseService } from 'src/app/shared/services';
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class SupplyManagementService extends BaseService {
|
||||
// 取消货源
|
||||
$api_cancle_goods_source = `/api/sdc/goodsResourceOperate/cancelSource`;
|
||||
// 整车获取货源表详情
|
||||
$api_get_getCompleteVehicleDetail = `/api/sdc/goodsResourceOperate/getWholeDetail`;
|
||||
// 大宗获取货源表详情
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-06 13:51:59
|
||||
* @LastEditors: your name
|
||||
* @LastEditTime: 2021-12-20 13:38:33
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\supply-management-routing.module.ts
|
||||
*/
|
||||
@ -11,7 +11,6 @@ import { RouterModule, Routes } from '@angular/router';
|
||||
import { SupplyManagementIndexComponent } from './components/index/index.component';
|
||||
import { SupplyManagementBulkComponent } from './components/bulk/bulk.component';
|
||||
import { SupplyManagementVehicleComponent } from './components/vehicle/vehicle.component';
|
||||
import { SupplyManagementBulkDetailComponent } from './components/bulk-detail/bulk-detail.component';
|
||||
import { SupplyManagementVehicleDetailComponent } from './components/vehicle-detail/vehicle-detail.component';
|
||||
import { SupplyManagementAddDriversComponent } from './components/add-drivers/add-drivers.component';
|
||||
import { SupplyManagementOnecarPublishComponent } from './components/onecar-publish/onecar-publish.component';
|
||||
@ -19,7 +18,7 @@ import { SupplyManagementBulkPublishComponent } from './components/bulk-publish/
|
||||
|
||||
const routes: Routes = [
|
||||
{ path: 'index', component: SupplyManagementIndexComponent },
|
||||
{ path: 'bulk-detail/:id', component: SupplyManagementBulkDetailComponent },
|
||||
// { path: 'bulk-detail/:id', component: SupplyManagementBulkDetailComponent },
|
||||
{ path: 'vehicle-detail/:id', component: SupplyManagementVehicleDetailComponent },
|
||||
{ path: 'add-drivers', component: SupplyManagementAddDriversComponent },
|
||||
{ path: 'vehicle-amend/:id', component: SupplyManagementOnecarPublishComponent },
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 11:10:14
|
||||
* @LastEditTime: 2021-12-14 20:40:01
|
||||
* @LastEditTime: 2021-12-20 13:38:26
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\supply-management\supply-management.module.ts
|
||||
@ -17,7 +17,6 @@ import { SupplyManagementUpdateFreightComponent } from './components/update-frei
|
||||
import { SupplyManagementAssignedCarComponent } from './components/assigned-car/assigned-car.component';
|
||||
import { SupplyManagementQrcodePageComponent } from './components/qrcode-page/qrcode-page.component';
|
||||
import { SupplyManagementUpdateExternalSnComponent } from './components/update-external-sn/update-external-sn.component';
|
||||
import { SupplyManagementBulkDetailComponent } from './components/bulk-detail/bulk-detail.component';
|
||||
import { SupplyManagementVehicleDetailComponent } from './components/vehicle-detail/vehicle-detail.component';
|
||||
import { SupplyManagementAddDriversComponent } from './components/add-drivers/add-drivers.component';
|
||||
import { SupplyManagementOnecarPublishComponent } from './components/onecar-publish/onecar-publish.component';
|
||||
@ -28,6 +27,7 @@ import { SupplyManagementBulkPublishComponent } from './components/bulk-publish/
|
||||
import { PublishAddressListComponent } from './components/onecar-publish/address-list/address-list.component';
|
||||
import { PublishSuccessComponent } from './components/onecar-publish/publish-success/publish-success.component';
|
||||
|
||||
|
||||
const COMPONENTS: Type<void>[] = [
|
||||
SupplyManagementIndexComponent,
|
||||
SupplyManagementBulkComponent,
|
||||
@ -37,7 +37,6 @@ const COMPONENTS: Type<void>[] = [
|
||||
SupplyManagementAssignedCarComponent,
|
||||
SupplyManagementQrcodePageComponent,
|
||||
SupplyManagementUpdateExternalSnComponent,
|
||||
SupplyManagementBulkDetailComponent,
|
||||
SupplyManagementVehicleDetailComponent,
|
||||
SupplyManagementAddDriversComponent,
|
||||
SupplyManagementOnecarPublishComponent,
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 15:31:52
|
||||
* @LastEditTime: 2021-12-17 14:57:52
|
||||
* @LastEditTime: 2021-12-20 15:06:25
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\components\vehicle-detail\vehicle-detail.component.html
|
||||
@ -52,10 +52,12 @@
|
||||
</div>
|
||||
<div *ngIf="item.type === 2 || item.type === '2'">
|
||||
<p>卸货地:{{item?.detailedAddress}}</p>
|
||||
|
||||
<p>联系人:{{item?.appUserName}}/{{item?.contractTelephone}}</p>
|
||||
<p>卸货日期:{{item?.modifyTime}}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div nz-col nzSpan="5">
|
||||
<div class="source-info bdr bdl pl-md">
|
||||
@ -84,10 +86,10 @@
|
||||
</div>
|
||||
<div class="source-info pl-md">
|
||||
<h3>补充信息</h3>
|
||||
<p style="color: #1890ff;">协议附件</p>
|
||||
<p style="color: #1890ff;"> 装车附件</p>
|
||||
<p style="color: #1890ff;">卸货附件</p>
|
||||
<p style="color: #1890ff;">回单附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('1')">协议附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('2')"> 装车附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('3')">卸货附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('4')">回单附件</p>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
@ -96,18 +98,16 @@
|
||||
<h3>运费信息</h3>
|
||||
<div class="text-right">
|
||||
<p><label class="freigth-label">收款人:</label><span>{{i?.payee?.name}} /{{i?.payee?.phone}} / {{i?.payee?.phone}}</span></p>
|
||||
<p><label class="freigth-label">预付:</label><span>{{400 | currency: '¥' }}</span></p>
|
||||
<p><label class="freigth-label">油卡:</label><span>{{400 | currency: '¥' }}</span></p>
|
||||
<p><label class="freigth-label">到付:</label><span>{{400 | currency: '¥' }}</span></p>
|
||||
<p><label class="freigth-label">回单付:</label><span>{{400 | currency: '¥'}}</span></p>
|
||||
<p><label class="freigth-label">附加费:</label><span>{{400 | currency: '¥' }}</span></p>
|
||||
<div *ngFor="let item of i?.billExpenseDetailVOList">
|
||||
<p><label class="freigth-label">{{item?.costName}}:</label><span>{{ item?.price| currency: '¥' }}</span></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
<div class="freight-info-box" nz-row>
|
||||
<div nz-col nzSpan="24">
|
||||
<h3 class="text-right"><label>总计 :</label> <span class="text-error-dark text-xl">{{400 | currency }}</span></h3>
|
||||
<h3 class="text-right">未支付</h3>
|
||||
<h3 class="text-right"><label>总计 :</label> <span class="text-error-dark text-xl">{{i?.freight | currency: '¥' }}</span></h3>
|
||||
<h3 class="text-right">{{i?.wayBillStatusLabel}}</h3>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@ -152,3 +152,12 @@
|
||||
</nz-card>
|
||||
</div>
|
||||
</nz-card>
|
||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||
<ng-container *nzModalContent>
|
||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||
</ng-container>
|
||||
<ng-template #nzModalFooter>
|
||||
<button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button>
|
||||
<button nz-button nzType="default" (click)="handleCancel()">确定 </button>
|
||||
</ng-template>
|
||||
</nz-modal>
|
||||
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 15:31:52
|
||||
* @LastEditTime: 2021-12-17 14:59:03
|
||||
* @LastEditTime: 2021-12-20 16:23:36
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\components\vehicle-detail\vehicle-detail.component.ts
|
||||
@ -12,7 +12,7 @@ import { STColumn } from '@delon/abc/st';
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||
import { SupplyManagementService } from '../../services/waybill-management.service';
|
||||
import { WaybillManagementServe } from '../../services/waybill-management.service';
|
||||
@Component({
|
||||
selector: 'app-supply-management-bulk-detail',
|
||||
templateUrl: './bulk-detail.component.html',
|
||||
@ -22,16 +22,18 @@ export class WaybillManagementBulkeDetailComponent implements OnInit {
|
||||
|
||||
id = this.route.snapshot.params.id;
|
||||
i: any;
|
||||
isVisible = false;
|
||||
logColumns: STColumn[] = [
|
||||
{ title: '时间', index: 'operationUserPhone' },
|
||||
{ title: '地点', index: ' createTime' },
|
||||
];
|
||||
imges: any;
|
||||
unLoadingPlaceVOList: any = [];
|
||||
|
||||
constructor(
|
||||
private route: ActivatedRoute,
|
||||
private msgSrv: NzMessageService,
|
||||
private service: SupplyManagementService,
|
||||
private service: WaybillManagementServe,
|
||||
private modalService: NzModalService
|
||||
) {
|
||||
|
||||
@ -66,5 +68,24 @@ export class WaybillManagementBulkeDetailComponent implements OnInit {
|
||||
goBack() {
|
||||
window.history.go(-1);
|
||||
}
|
||||
|
||||
agreement(value: any) {
|
||||
console.log('123')
|
||||
console.log(value)
|
||||
if(value === '1') {
|
||||
this.imges = this.i?.supplementAgreement
|
||||
} else if (value === '2') {
|
||||
this.imges = this.i?.loadingCertificate
|
||||
} else if (value === '3') {
|
||||
this.imges = this.i?.unLoadingCertificate
|
||||
} else if (value === '4') {
|
||||
this.imges = this.i?.receiptCertificate
|
||||
}
|
||||
this.isVisible = true;
|
||||
}
|
||||
handleCancel() {
|
||||
this.isVisible = false
|
||||
}
|
||||
handleOK() {
|
||||
this.isVisible = false
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,7 +6,9 @@ import { ShipperBaseService } from '@shared';
|
||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||
import { of } from 'rxjs';
|
||||
import { map } from 'rxjs/operators';
|
||||
import { SupplyManagementService } from '../../services/waybill-management.service';
|
||||
import { VehicleSureArriveComponent } from 'src/app/routes/order-management/modal/vehicle/sure-arrive/sure-arrive.component';
|
||||
import { VehicleSureDepartComponent } from 'src/app/routes/order-management/modal/vehicle/sure-depart/sure-depart.component';
|
||||
import { WaybillManagementServe } from '../../services/waybill-management.service';
|
||||
|
||||
|
||||
@Component({
|
||||
@ -55,7 +57,7 @@ tabs = {
|
||||
receivedQuantity: 0,
|
||||
stayQuantity: 0
|
||||
};
|
||||
constructor(public service: SupplyManagementService, private modal: NzModalService, public service2: ShipperBaseService) { }
|
||||
constructor(public service: WaybillManagementServe, private modal: NzModalService, public service2: ShipperBaseService) { }
|
||||
|
||||
/**
|
||||
* 查询参数
|
||||
@ -422,6 +424,14 @@ tabs = {
|
||||
text: '查看评价',
|
||||
click: (_record) => this.viewEvaluate(_record),
|
||||
},
|
||||
{
|
||||
text: '确认发车',
|
||||
click: (_record) => this.sureDepart(_record),
|
||||
},
|
||||
{
|
||||
text: '确认到车',
|
||||
click: (_record) => this.sureArrive(_record),
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
||||
@ -602,4 +612,31 @@ tabs = {
|
||||
}
|
||||
})
|
||||
}
|
||||
// *确认发车
|
||||
|
||||
sureDepart(item: any) {
|
||||
const modalRef = this.modal.create({
|
||||
nzTitle: '确认发车',
|
||||
nzWidth: '50%',
|
||||
nzContent: VehicleSureDepartComponent,
|
||||
nzComponentParams: {
|
||||
i: item,
|
||||
Status: 2
|
||||
},
|
||||
nzFooter: null
|
||||
});
|
||||
}
|
||||
// 确认到车
|
||||
sureArrive(item: any) {
|
||||
const modalRef = this.modal.create({
|
||||
nzTitle: '确认到车',
|
||||
nzWidth: '50%',
|
||||
nzContent: VehicleSureArriveComponent,
|
||||
nzComponentParams: {
|
||||
i: item,
|
||||
Status: 2
|
||||
},
|
||||
nzFooter: null
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 15:31:52
|
||||
* @LastEditTime: 2021-12-20 10:12:37
|
||||
* @LastEditTime: 2021-12-20 15:07:51
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\components\vehicle-detail\vehicle-detail.component.html
|
||||
@ -84,10 +84,10 @@
|
||||
</div>
|
||||
<div class="source-info pl-md">
|
||||
<h3>补充信息</h3>
|
||||
<p style="color: #1890ff;">协议附件</p>
|
||||
<p style="color: #1890ff;"> 装车附件</p>
|
||||
<p style="color: #1890ff;">卸货附件</p>
|
||||
<p style="color: #1890ff;">回单附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('1')">协议附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('2')"> 装车附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('3')">卸货附件</p>
|
||||
<p style="color: #1890ff;" (click)="agreement('4')">回单附件</p>
|
||||
</div>
|
||||
</div>
|
||||
<nz-divider></nz-divider>
|
||||
@ -104,8 +104,8 @@
|
||||
<nz-divider></nz-divider>
|
||||
<div class="freight-info-box" nz-row>
|
||||
<div nz-col nzSpan="24">
|
||||
<h3 class="text-right"><label>总计 :</label> <span class="text-error-dark text-xl">{{400 | currency }}</span></h3>
|
||||
<h3 class="text-right">未支付</h3>
|
||||
<h3 class="text-right"><label>总计 :</label> <span class="text-error-dark text-xl">{{i?.freight | currency: '¥' }}</span></h3>
|
||||
<h3 class="text-right">{{i?.wayBillStatusLabel}}</h3>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
@ -114,23 +114,22 @@
|
||||
<div nz-row >
|
||||
<div nz-col [nzSpan]='12'>
|
||||
<div style="position: relative;">
|
||||
<div style="height: 24px; width: 90px; background-color: #68758e;position: absolute; top: -109%; left: 0%;color: #fff;text-align: center;">平台支付</div>
|
||||
<span class="leftPadding">司机运输费666</span>
|
||||
<span class="leftPadding">1000.00</span>
|
||||
<span class="leftPadding">未支付</span>
|
||||
<div style="height: 24px; width: 90px; background-color: #68758e;color: #fff;text-align: center;">平台支付</div>
|
||||
|
||||
<div >
|
||||
<!-- <p><label class="freigth-label">{{i?.platformPaymentDetail?.costName}}:</label><span>{{ i?.platformPaymentDetail?.price| currency: '¥' }}</span></p> -->
|
||||
<div *ngFor="let item of i?.platformPaymentDetail">
|
||||
<p><label class="freigth-label">{{item?.costName}}:</label><span>{{ item?.price| currency: '¥' }}</span></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div nz-col [nzSpan]='12'>
|
||||
<div style="position: relative;">
|
||||
<div style="height: 24px; width: 90px; background-color: #68758e;position: absolute; top: -109%; left: 0%;color: #fff;text-align: center;">货主支付</div>
|
||||
<span class="leftPadding">司机运输费22</span>
|
||||
<span class="leftPadding">1000.00</span>
|
||||
<span class="leftPadding">未支付</span>
|
||||
<div style="height: 24px; width: 90px; background-color: #68758e;color: #fff;text-align: center;">货主支付</div>
|
||||
<div *ngFor="let item of i?.ownerPaymentDetail?.freightDetail">
|
||||
<p><label class="freigth-label">{{item?.costName}}:</label><span>{{ item?.price| currency: '¥' }}</span></p>
|
||||
</div>
|
||||
<div>
|
||||
<span class="leftPadding">附加费</span>
|
||||
<span class="leftPadding">1000.00</span>
|
||||
<span class="leftPadding">未支付</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -150,3 +149,12 @@
|
||||
</nz-card>
|
||||
</div>
|
||||
</nz-card>
|
||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||
<ng-container *nzModalContent>
|
||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||
</ng-container>
|
||||
<ng-template #nzModalFooter>
|
||||
<button nz-button nzType="primary" (click)="handleOK()" [disabled]="">取消</button>
|
||||
<button nz-button nzType="default" (click)="handleCancel()">确定 </button>
|
||||
</ng-template>
|
||||
</nz-modal>
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-03 15:31:52
|
||||
* @LastEditTime: 2021-12-17 14:38:14
|
||||
* @LastEditTime: 2021-12-20 13:55:09
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\components\vehicle-detail\vehicle-detail.component.ts
|
||||
@ -12,7 +12,7 @@ import { STColumn } from '@delon/abc/st';
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||
import { SupplyManagementService } from '../../services/waybill-management.service';
|
||||
import { WaybillManagementServe } from '../../services/waybill-management.service';
|
||||
@Component({
|
||||
selector: 'app-supply-management-vehicle-detail',
|
||||
templateUrl: './vehicle-detail.component.html',
|
||||
@ -21,7 +21,9 @@ import { SupplyManagementService } from '../../services/waybill-management.servi
|
||||
export class WaybillManagementVehicleDetailComponent implements OnInit {
|
||||
|
||||
id = this.route.snapshot.params.id;
|
||||
isVisible = false;
|
||||
i: any;
|
||||
imges: any;
|
||||
logColumns: STColumn[] = [
|
||||
{ title: '时间', index: 'operationUserPhone' },
|
||||
{ title: '地点', index: ' createTime' },
|
||||
@ -31,7 +33,7 @@ export class WaybillManagementVehicleDetailComponent implements OnInit {
|
||||
constructor(
|
||||
private route: ActivatedRoute,
|
||||
private msgSrv: NzMessageService,
|
||||
private service: SupplyManagementService,
|
||||
private service: WaybillManagementServe,
|
||||
private modalService: NzModalService
|
||||
) {
|
||||
|
||||
@ -65,5 +67,24 @@ export class WaybillManagementVehicleDetailComponent implements OnInit {
|
||||
goBack() {
|
||||
window.history.go(-1);
|
||||
}
|
||||
|
||||
handleCancel() {
|
||||
this.isVisible = false
|
||||
}
|
||||
handleOK() {
|
||||
this.isVisible = false
|
||||
}
|
||||
agreement(value: any) {
|
||||
console.log('123')
|
||||
console.log(value)
|
||||
if(value === '1') {
|
||||
this.imges = this.i?.supplementAgreement
|
||||
} else if (value === '2') {
|
||||
this.imges = this.i?.loadingCertificate
|
||||
} else if (value === '3') {
|
||||
this.imges = this.i?.unLoadingCertificate
|
||||
} else if (value === '4') {
|
||||
this.imges = this.i?.receiptCertificate
|
||||
}
|
||||
this.isVisible = true;
|
||||
}
|
||||
}
|
||||
|
||||
@ -6,7 +6,7 @@ import { ShipperBaseService } from '@shared';
|
||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||
import { of } from 'rxjs';
|
||||
import { map } from 'rxjs/operators';
|
||||
import { SupplyManagementService } from '../../services/waybill-management.service';
|
||||
import { WaybillManagementServe } from '../../services/waybill-management.service';
|
||||
|
||||
|
||||
@Component({
|
||||
@ -51,7 +51,7 @@ tabs = {
|
||||
receivedQuantity: 0,
|
||||
stayQuantity: 0
|
||||
};
|
||||
constructor(public service: SupplyManagementService, private modal: NzModalService, public service2: ShipperBaseService) { }
|
||||
constructor(public service: WaybillManagementServe, private modal: NzModalService, public service2: ShipperBaseService) { }
|
||||
|
||||
/**
|
||||
* 查询参数
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
import { WaybillManagementBulkComponent } from './../components/bulk/bulk.component';
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-07 14:52:29
|
||||
@ -12,7 +13,7 @@ import { BaseService } from 'src/app/shared/services';
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class SupplyManagementService extends BaseService {
|
||||
export class WaybillManagementServe extends BaseService {
|
||||
|
||||
$api_get_catalogue_member = `/user?_allow_anonymous=true`;
|
||||
$api_del_driver = ``;
|
||||
@ -35,6 +36,10 @@ export class SupplyManagementService extends BaseService {
|
||||
|
||||
// 根据车牌号查询车辆信息
|
||||
$api_get_getCarLicenseListByCarNo= `/api/mdc/cuc/carLicenseAudit/operate/getCarLicenseListByCarNo`;
|
||||
|
||||
// 大宗确认发车
|
||||
$api_get_insertBulkStartCarInfo= `/api/sdc/wayBillOperate/insertBulkStartCarInfo`;
|
||||
|
||||
constructor(public injector: Injector) {
|
||||
super(injector)
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-11-29 10:04:12
|
||||
* @LastEditTime: 2021-12-15 20:50:49
|
||||
* @LastEditTime: 2021-12-20 16:55:59
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\shared\utils\date.util.ts
|
||||
@ -67,6 +67,8 @@ export class EADateUtil {
|
||||
* @returns YYYY-MM-DD 00:00:00
|
||||
*/
|
||||
static yearToDateTime(start: Date): number {
|
||||
console.log('222')
|
||||
console.log(start)
|
||||
let Dates : any='';
|
||||
if(typeof(start) !== 'string') {
|
||||
var c = new Date(start);
|
||||
|
||||
Reference in New Issue
Block a user