返佣
This commit is contained in:
@ -21,7 +21,7 @@
|
|||||||
{{ costInfo?.artoname }}
|
{{ costInfo?.artoname }}
|
||||||
</se>
|
</se>
|
||||||
<se label="结算客户" required>
|
<se label="结算客户" required>
|
||||||
{{ costInfo?.shipperId }}
|
{{ costInfo?.cnoName }}
|
||||||
</se>
|
</se>
|
||||||
<se label="收款账户">
|
<se label="收款账户">
|
||||||
{{ costInfo?.ltdaccountId }}
|
{{ costInfo?.ltdaccountId }}
|
||||||
@ -75,8 +75,8 @@
|
|||||||
</div> -->
|
</div> -->
|
||||||
<st #infoST [scroll]="{ x: '2000px' }" [data]="service.$api_get_advance_collection_hrxiao"
|
<st #infoST [scroll]="{ x: '2000px' }" [data]="service.$api_get_advance_collection_hrxiao"
|
||||||
[columns]="columns.info" [page]="{ show: false }" [req]="{ process: beforeReq }"
|
[columns]="columns.info" [page]="{ show: false }" [req]="{ process: beforeReq }"
|
||||||
[res]="{ reName: { list: 'data' } }" [loading]="false"
|
[res]="{ reName: { list: 'data' } }" [loading]="false" [scroll]="{ x: '1200px', y: '370px' }"
|
||||||
[scroll]="{ x: '1200px', y: '370px' }" class="mt-md">
|
class="mt-md">
|
||||||
<ng-template st-row="no" let-item let-index="index" let-column="column">
|
<ng-template st-row="no" let-item let-index="index" let-column="column">
|
||||||
{{index+1}}
|
{{index+1}}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, ViewChild } from '@angular/core';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
|
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { AccountDetailComponent } from 'src/app/shared/components/account-detail/account-detail.component';
|
|
||||||
import { FreightAccountService } from '../../services/freight-account.service';
|
import { FreightAccountService } from '../../services/freight-account.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -11,7 +11,7 @@ import { FreightAccountService } from '../../services/freight-account.service';
|
|||||||
templateUrl: './advance-collection.component.html',
|
templateUrl: './advance-collection.component.html',
|
||||||
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
|
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
|
||||||
})
|
})
|
||||||
export class AdvanceCollectionComponent implements OnInit {
|
export class AdvanceCollectionComponent {
|
||||||
@ViewChild('st', { static: true })
|
@ViewChild('st', { static: true })
|
||||||
st!: STComponent;
|
st!: STComponent;
|
||||||
@ViewChild('sf', { static: false })
|
@ViewChild('sf', { static: false })
|
||||||
@ -23,8 +23,6 @@ export class AdvanceCollectionComponent implements OnInit {
|
|||||||
|
|
||||||
constructor(public service: FreightAccountService, private router: Router, private modal: NzModalService) {}
|
constructor(public service: FreightAccountService, private router: Router, private modal: NzModalService) {}
|
||||||
|
|
||||||
ngOnInit(): void {}
|
|
||||||
|
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
if (this.sf) {
|
if (this.sf) {
|
||||||
Object.assign(requestOptions.body, { ...this.sf.value });
|
Object.assign(requestOptions.body, { ...this.sf.value });
|
||||||
@ -49,7 +47,7 @@ export class AdvanceCollectionComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
exportList() {
|
exportList() {
|
||||||
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
|
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
|
||||||
}
|
}
|
||||||
|
|
||||||
private initSF(): SFSchema {
|
private initSF(): SFSchema {
|
||||||
@ -149,14 +147,14 @@ export class AdvanceCollectionComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '浏览',
|
text: '浏览',
|
||||||
click: item => this.router.navigate(['/financial-management/advance-collection/detail/' + item.id])
|
click: item => this.router.navigate([`/financial-management/advance-collection/detail/${item.id}`])
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '核销'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: '退款'
|
|
||||||
}
|
}
|
||||||
|
// {
|
||||||
|
// text: '核销'
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// text: '退款'
|
||||||
|
// }
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|||||||
@ -2,6 +2,7 @@ import { Component, OnInit, ViewChild } from '@angular/core';
|
|||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
|
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
||||||
|
|
||||||
import { FreightAccountService } from '../../../services/freight-account.service';
|
import { FreightAccountService } from '../../../services/freight-account.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -134,6 +135,24 @@ export class PlatformAccountDetailComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
default: ''
|
default: ''
|
||||||
},
|
},
|
||||||
|
channelSource: {
|
||||||
|
type: 'string',
|
||||||
|
title: '账户类型',
|
||||||
|
enum: [
|
||||||
|
{ value: '', label: '全部' },
|
||||||
|
{ value: '1', label: '货主账户' },
|
||||||
|
{ value: '2', label: '司机账户' },
|
||||||
|
{ value: '3', label: '运营商账户' }
|
||||||
|
],
|
||||||
|
ui: {
|
||||||
|
widget: 'select',
|
||||||
|
placeholder: '请选择',
|
||||||
|
visibleIf: {
|
||||||
|
expand: (value: boolean) => value
|
||||||
|
}
|
||||||
|
},
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
incomeType: {
|
incomeType: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '收支类型',
|
title: '收支类型',
|
||||||
|
|||||||
@ -1,10 +1,11 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { CurrencyPipe } from '@angular/common';
|
||||||
|
import { Component, ViewChild } from '@angular/core';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
|
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
|
|
||||||
import { FreightAccountService } from '../../services/freight-account.service';
|
import { FreightAccountService } from '../../services/freight-account.service';
|
||||||
import { CurrencyPipe } from '@angular/common';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-transaction-flow',
|
selector: 'app-transaction-flow',
|
||||||
@ -12,7 +13,7 @@ import { CurrencyPipe } from '@angular/common';
|
|||||||
styleUrls: ['./transaction-flow.component.less'],
|
styleUrls: ['./transaction-flow.component.less'],
|
||||||
providers: [CurrencyPipe]
|
providers: [CurrencyPipe]
|
||||||
})
|
})
|
||||||
export class TransactionFlowComponent implements OnInit {
|
export class TransactionFlowComponent {
|
||||||
@ViewChild('st', { static: true })
|
@ViewChild('st', { static: true })
|
||||||
st!: STComponent;
|
st!: STComponent;
|
||||||
@ViewChild('sf', { static: false })
|
@ViewChild('sf', { static: false })
|
||||||
@ -29,8 +30,6 @@ export class TransactionFlowComponent implements OnInit {
|
|||||||
private currencyPipe: CurrencyPipe
|
private currencyPipe: CurrencyPipe
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
ngOnInit(): void {}
|
|
||||||
|
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
if (this.sf) {
|
if (this.sf) {
|
||||||
Object.assign(requestOptions.body, {
|
Object.assign(requestOptions.body, {
|
||||||
@ -162,7 +161,7 @@ export class TransactionFlowComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
orderSn221f: {
|
projectId: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '所属项目',
|
title: '所属项目',
|
||||||
ui: {
|
ui: {
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, ViewChild } from '@angular/core';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
|
|
||||||
import { FreightAccountService } from '../../services/freight-account.service';
|
import { FreightAccountService } from '../../services/freight-account.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -10,7 +11,7 @@ import { FreightAccountService } from '../../services/freight-account.service';
|
|||||||
templateUrl: './withdrawals-record.component.html',
|
templateUrl: './withdrawals-record.component.html',
|
||||||
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
|
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
|
||||||
})
|
})
|
||||||
export class WithdrawalsRecordComponent implements OnInit {
|
export class WithdrawalsRecordComponent {
|
||||||
@ViewChild('st', { static: true })
|
@ViewChild('st', { static: true })
|
||||||
st!: STComponent;
|
st!: STComponent;
|
||||||
@ViewChild('sf', { static: false })
|
@ViewChild('sf', { static: false })
|
||||||
@ -27,9 +28,8 @@ export class WithdrawalsRecordComponent implements OnInit {
|
|||||||
refundStatus: any = '';
|
refundStatus: any = '';
|
||||||
|
|
||||||
msg = '';
|
msg = '';
|
||||||
constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {}
|
|
||||||
|
|
||||||
ngOnInit(): void {}
|
constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {}
|
||||||
|
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
if (this.sf) {
|
if (this.sf) {
|
||||||
@ -66,7 +66,7 @@ export class WithdrawalsRecordComponent implements OnInit {
|
|||||||
|
|
||||||
auditAction(item?: any) {
|
auditAction(item?: any) {
|
||||||
this.msg = '';
|
this.msg = '';
|
||||||
let params: Array<string> = [];
|
let params: string[] = [];
|
||||||
if (item) {
|
if (item) {
|
||||||
params = [item.id];
|
params = [item.id];
|
||||||
} else {
|
} else {
|
||||||
@ -78,6 +78,7 @@ export class WithdrawalsRecordComponent implements OnInit {
|
|||||||
nzFooter: [
|
nzFooter: [
|
||||||
{
|
{
|
||||||
label: '拒绝',
|
label: '拒绝',
|
||||||
|
loading: () => this.service.http.loading,
|
||||||
type: 'default',
|
type: 'default',
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
if (!this.msg) {
|
if (!this.msg) {
|
||||||
@ -101,6 +102,7 @@ export class WithdrawalsRecordComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '通过',
|
label: '通过',
|
||||||
|
loading: () => this.service.http.loading,
|
||||||
type: 'primary',
|
type: 'primary',
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
this.service
|
this.service
|
||||||
@ -291,7 +293,7 @@ export class WithdrawalsRecordComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '详情',
|
text: '详情',
|
||||||
click: item => this.router.navigate(['/financial-management/withdrawals-record/detail/' + item.id])
|
click: item => this.router.navigate([`/financial-management/withdrawals-record/detail/${item.id}`])
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@ -284,7 +284,7 @@
|
|||||||
<sv label="协议附件">
|
<sv label="协议附件">
|
||||||
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
||||||
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
||||||
<a href="javascript:;" (click)="agreement('2')">补充协议</a>
|
<a target="_blank" [routerLink]="['/agreement']" [queryParams]="{ type: 8 }">补充协议</a>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2" class="mt-md">
|
<sv-container col="2" class="mt-md">
|
||||||
@ -344,7 +344,7 @@
|
|||||||
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<st [scroll]="{y: '500px'}" #st [data]="addressItems" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st [scroll]="{y: '500px'}" style="min-height: 600px;" #st [data]="addressItems" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
@ -363,6 +363,7 @@
|
|||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
|
<div *ngIf="!imges">暂无附件信息</div>
|
||||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooter>
|
<ng-template #nzModalFooter>
|
||||||
|
|||||||
@ -908,11 +908,7 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
agreement(value: any) {
|
agreement(value: any) {
|
||||||
if (value === '1') {
|
this.imges = this.i?.agreementFilePath;
|
||||||
this.imges = this.i?.supplementAgreement;
|
|
||||||
} else if (value === '2') {
|
|
||||||
this.imges = this.i?.supplementAgreement;
|
|
||||||
}
|
|
||||||
this.isVisible = true;
|
this.isVisible = true;
|
||||||
}
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
|
|||||||
@ -24,7 +24,7 @@
|
|||||||
<button
|
<button
|
||||||
(click)="cancellation()"
|
(click)="cancellation()"
|
||||||
nz-button
|
nz-button
|
||||||
*ngIf="i?.billStatus == '4' || i?.billStatus == '5' || i?.billStatus == '2' || i?.billStatus == '3' || i?.billStatus == '1'"
|
*ngIf="i?.billStatus !== '1' && i?.billStatus !== '5' && i?.billStatus !== '6' && i?.overallPaymentStatus != '2'"
|
||||||
acl [acl-ability]="['ORDER-BULK-DETAIL-cancelAnOrder']"
|
acl [acl-ability]="['ORDER-BULK-DETAIL-cancelAnOrder']"
|
||||||
>取消订单</button
|
>取消订单</button
|
||||||
>
|
>
|
||||||
@ -47,7 +47,7 @@
|
|||||||
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
||||||
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
||||||
<sv label="货源编号">{{ i?.goodsResource?.resourceCode }} </sv>
|
<sv label="货源编号">{{ i?.goodsResource?.resourceCode }} </sv>
|
||||||
<sv label="运单号">{{ i?.wayBillCode }}</sv>
|
<sv label="运单号">{{ i?.wayBill?.wayBillCode }}</sv>
|
||||||
<sv label="承诺付款天数">{{ i?.goodsResource?.paymentDays }}</sv>
|
<sv label="承诺付款天数">{{ i?.goodsResource?.paymentDays }}</sv>
|
||||||
</div>
|
</div>
|
||||||
<nz-tabset style="margin-top: 15px">
|
<nz-tabset style="margin-top: 15px">
|
||||||
@ -94,8 +94,8 @@
|
|||||||
{{ i?.unloadPlanTime }}
|
{{ i?.unloadPlanTime }}
|
||||||
</sv> -->
|
</sv> -->
|
||||||
<sv label="接单数量"> {{ i?.acceptWeight }}吨,{{ i?.acceptVolume }}方 </sv>
|
<sv label="接单数量"> {{ i?.acceptWeight }}吨,{{ i?.acceptVolume }}方 </sv>
|
||||||
<sv *ngIf="i?.billStatus =='3' || i?.billStatus =='4' || i?.billStatus =='5'" label="装货数量"> {{ i?.acceptWeight }}吨,{{ i?.acceptVolume }}方,{{ i?.acceptNumber }}件 </sv>
|
<sv *ngIf="i?.billStatus =='3' || i?.billStatus =='4' || i?.billStatus =='5'" label="装货数量"> {{ i?.loadWeight }}吨,{{ i?.loadVolume }}方</sv>
|
||||||
<sv *ngIf="i?.billStatus =='4' || i?.billStatus =='5'" label="卸货数量"> {{ i?.settlementWeight }}吨,{{ i?.settlementVolume }}方,{{ i?.acceptNumber }}件 </sv>
|
<sv *ngIf="i?.billStatus =='4' || i?.billStatus =='5'" label="卸货数量"> {{ i?.settlementWeight }}吨,{{ i?.settlementVolume }}方</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<div class="mt-md">
|
<div class="mt-md">
|
||||||
<h4 class="text-md"
|
<h4 class="text-md"
|
||||||
@ -165,7 +165,7 @@
|
|||||||
<sv label="协议附件">
|
<sv label="协议附件">
|
||||||
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
||||||
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
||||||
<a href="javascript:;" (click)="agreement('2')">补充协议</a>
|
<a target="_blank" [routerLink]="['/agreement']" [queryParams]="{ type: 8 }">补充协议</a>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2" class="mt-md">
|
<sv-container col="2" class="mt-md">
|
||||||
@ -208,11 +208,11 @@
|
|||||||
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<st [scroll]="{y: '500px'}" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st [scroll]="{y: '500px'}" style="min-height: 600px;" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<amap-path-simplifier [mapWidth]="'100%'" [mapHeight]="'600px'" [MapList]="mapList"></amap-path-simplifier>
|
<amap-path-simplifier [mapWidth]="'100%'" [pois]="pois" [mapHeight]="'600px'" [MapList]="mapList"></amap-path-simplifier>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
@ -251,6 +251,7 @@
|
|||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
|
<div *ngIf="!imges">暂无附件信息</div>
|
||||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooter>
|
<ng-template #nzModalFooter>
|
||||||
|
|||||||
@ -28,6 +28,7 @@ export class OrderManagementBulkeDetailComponent implements OnInit {
|
|||||||
MapList: any[]=[];
|
MapList: any[]=[];
|
||||||
id = this.route.snapshot.params.id;
|
id = this.route.snapshot.params.id;
|
||||||
billExpenses: any[] = []; //运费信息表格信息
|
billExpenses: any[] = []; //运费信息表格信息
|
||||||
|
pois: any[] = [];
|
||||||
i: any;
|
i: any;
|
||||||
imges: any;
|
imges: any;
|
||||||
totalObj: any;
|
totalObj: any;
|
||||||
@ -79,6 +80,20 @@ export class OrderManagementBulkeDetailComponent implements OnInit {
|
|||||||
this.i = res;
|
this.i = res;
|
||||||
this.billExpenses = this.i?.billExpenseDetails?.filter((data: any) => data.expenseCode === 'TRA');
|
this.billExpenses = this.i?.billExpenseDetails?.filter((data: any) => data.expenseCode === 'TRA');
|
||||||
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data:any)=>data.displayStatus !=="HIDE");
|
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data:any)=>data.displayStatus !=="HIDE");
|
||||||
|
this.pois = [
|
||||||
|
{
|
||||||
|
markerLabel: '起',
|
||||||
|
color: 'blue',
|
||||||
|
position: [res.startingPoint.longitude, res.startingPoint.latitude],
|
||||||
|
title: res.startingPoint.detailedAddress
|
||||||
|
},
|
||||||
|
{
|
||||||
|
markerLabel: '卸',
|
||||||
|
color: 'red',
|
||||||
|
position: [res.endPoint.longitude, res.endPoint.latitude],
|
||||||
|
title: res.endPoint.detailedAddress
|
||||||
|
}
|
||||||
|
];
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.service.request(this.service.$api_get_getRiskDetail, { id: this.id }).subscribe(res => {
|
this.service.request(this.service.$api_get_getRiskDetail, { id: this.id }).subscribe(res => {
|
||||||
@ -97,11 +112,7 @@ export class OrderManagementBulkeDetailComponent implements OnInit {
|
|||||||
this.router.navigate(['order-management/bulk-detailChange', this.id]);
|
this.router.navigate(['order-management/bulk-detailChange', this.id]);
|
||||||
}
|
}
|
||||||
agreement(value: any) {
|
agreement(value: any) {
|
||||||
if (value === '1') {
|
this.imges = this.i?.agreementFilePath;
|
||||||
this.imges = this.i?.supplementAgreement;
|
|
||||||
} else if (value === '2') {
|
|
||||||
this.imges = this.i?.supplementAgreement;
|
|
||||||
}
|
|
||||||
this.isVisible = true;
|
this.isVisible = true;
|
||||||
}
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
|
|||||||
@ -242,7 +242,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template #extraTemplate>
|
<ng-template #extraTemplate>
|
||||||
<div>
|
<div *ngIf="resourceStatus == 4">
|
||||||
<button
|
<button
|
||||||
nz-button
|
nz-button
|
||||||
nzType="primary"
|
nzType="primary"
|
||||||
|
|||||||
@ -118,7 +118,7 @@ export class OrderManagementBulkComponent implements OnInit {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
search() {
|
search() {
|
||||||
this.st?.load(1);
|
this.st?.load();
|
||||||
this.getGoodsSourceStatistical();
|
this.getGoodsSourceStatistical();
|
||||||
}
|
}
|
||||||
getGoodsSourceStatistical() {
|
getGoodsSourceStatistical() {
|
||||||
@ -181,7 +181,10 @@ export class OrderManagementBulkComponent implements OnInit {
|
|||||||
_$expand: { type: 'boolean', ui: { hidden: true } },
|
_$expand: { type: 'boolean', ui: { hidden: true } },
|
||||||
billCode: {
|
billCode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '订单号'
|
title: '订单号',
|
||||||
|
ui: {
|
||||||
|
placeholder: '最多100个单号,空号隔开',
|
||||||
|
}
|
||||||
},
|
},
|
||||||
resourceCode: {
|
resourceCode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -513,7 +516,7 @@ export class OrderManagementBulkComponent implements OnInit {
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
width: '130px',
|
width: '130px',
|
||||||
className: 'text-center',
|
className: 'text-left block-td',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '运费变更记录',
|
text: '运费变更记录',
|
||||||
@ -523,44 +526,44 @@ export class OrderManagementBulkComponent implements OnInit {
|
|||||||
acl: { ability: ['ORDER-BULK-listChangeApply'] },
|
acl: { ability: ['ORDER-BULK-listChangeApply'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看评价 ',
|
text: '查看评价',
|
||||||
click: _record => this.viewEvaluate(_record),
|
click: _record => this.viewEvaluate(_record),
|
||||||
iif: item => item.billStatus == '5',
|
iif: item => item.billStatus == '5',
|
||||||
acl: { ability: ['ORDER-BULK-evaluation'] },
|
acl: { ability: ['ORDER-BULK-evaluation'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看详情 ',
|
text: '查看详情',
|
||||||
click: (item: any) => {
|
click: (item: any) => {
|
||||||
this.router.navigate(['./bulk-detail', item.id], { relativeTo: this.ar });
|
this.router.navigate(['./bulk-detail', item.id], { relativeTo: this.ar });
|
||||||
},
|
},
|
||||||
acl: { ability: ['USERCENTER-FREIGHT-USER-view'] },
|
acl: { ability: ['USERCENTER-FREIGHT-USER-view'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '变更运费 ',
|
text: '变更运费',
|
||||||
click: _record => this.updateFreight(_record),
|
click: _record => this.updateFreight(_record),
|
||||||
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
|
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
|
||||||
acl: { ability: ['ORDER-BULK-FreightChangeBulkDetail'] },
|
acl: { ability: ['ORDER-BULK-FreightChangeBulkDetail'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '确认签收 ',
|
text: '确认签收',
|
||||||
click: _record => this.confirmReceipt(_record),
|
click: _record => this.confirmReceipt(_record),
|
||||||
iif: item => item.billStatus == '4',
|
iif: item => item.billStatus == '4',
|
||||||
acl: { ability: ['VEHICLE-LIST-view'] },
|
acl: { ability: ['VEHICLE-LIST-view'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '取消订单 ',
|
text: '取消订单',
|
||||||
click: _record => this.cancellation(_record),
|
click: _record => this.cancellation(_record),
|
||||||
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
|
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
|
||||||
acl: { ability: ['ORDER-BULK-signBulkOrder'] },
|
acl: { ability: ['ORDER-BULK-signBulkOrder'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '申请退款 ',
|
text: '申请退款',
|
||||||
click: (_record) => this.applyRefund(_record),
|
click: (_record) => this.applyRefund(_record),
|
||||||
iif: item => item.isApplyForRefund,
|
iif: item => item.isApplyForRefund,
|
||||||
acl: { ability: ['ORDER-VEHICLE-modificationOrder'] },
|
acl: { ability: ['ORDER-VEHICLE-modificationOrder'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '修改订单 ',
|
text: '修改订单',
|
||||||
click: _record => this.changeOrder(_record),
|
click: _record => this.changeOrder(_record),
|
||||||
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3',
|
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3',
|
||||||
acl: { ability: ['ORDER-BULK-BulkBillDetail'] },
|
acl: { ability: ['ORDER-BULK-BulkBillDetail'] },
|
||||||
|
|||||||
@ -389,7 +389,7 @@ export class OrderManagementComplianceAuditComponent implements OnInit {
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
width: '140px',
|
width: '140px',
|
||||||
className: 'text-center',
|
className: 'text-center block-td',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '查看申诉记录',
|
text: '查看申诉记录',
|
||||||
@ -403,7 +403,7 @@ export class OrderManagementComplianceAuditComponent implements OnInit {
|
|||||||
acl: { ability: ['ORDER-COMPLIANCE-AUDIT-listChangeApply'] },
|
acl: { ability: ['ORDER-COMPLIANCE-AUDIT-listChangeApply'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '合规抽查 ',
|
text: '合规抽查',
|
||||||
click: _record => this.audit(_record),
|
click: _record => this.audit(_record),
|
||||||
iif: item => item.complianceStatus == '0',
|
iif: item => item.complianceStatus == '0',
|
||||||
acl: { ability: ['ORDER-COMPLIANCE-AUDIT-updateBillByCompliance'] },
|
acl: { ability: ['ORDER-COMPLIANCE-AUDIT-updateBillByCompliance'] },
|
||||||
|
|||||||
@ -331,7 +331,7 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
width: '136px',
|
width: '136px',
|
||||||
className: 'text-center',
|
className: 'text-center block-td',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '生成电子单据',
|
text: '生成电子单据',
|
||||||
@ -340,19 +340,19 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
|
|||||||
acl: { ability: ['ORDER-RECEIPTS-electronicBillingOne'] },
|
acl: { ability: ['ORDER-RECEIPTS-electronicBillingOne'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '通过 ',
|
text: '通过',
|
||||||
click: _record => this.sign(_record),
|
click: _record => this.sign(_record),
|
||||||
iif: item => item.auditStatus == '1',
|
iif: item => item.auditStatus == '1',
|
||||||
acl: { ability: ['ORDER-RECEIPTS-billAuditPassBatch'] },
|
acl: { ability: ['ORDER-RECEIPTS-billAuditPassBatch'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '修改 ',
|
text: '修改',
|
||||||
click: _record => this.modification(_record),
|
click: _record => this.modification(_record),
|
||||||
iif: item => item.auditStatus == '1' ,
|
iif: item => item.auditStatus == '1' ,
|
||||||
acl: { ability: ['ORDER-RECEIPTS-updateBillExamine'] },
|
acl: { ability: ['ORDER-RECEIPTS-updateBillExamine'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看凭证 ',
|
text: '查看凭证',
|
||||||
click: _record => this.generate(_record, 3),
|
click: _record => this.generate(_record, 3),
|
||||||
iif: item => item.auditStatus == '2',
|
iif: item => item.auditStatus == '2',
|
||||||
acl: { ability: ['ORDER-RECEIPTS-view'] },
|
acl: { ability: ['ORDER-RECEIPTS-view'] },
|
||||||
|
|||||||
@ -302,7 +302,7 @@ export class OrderManagementRiskComponent implements OnInit {
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
width: '90px',
|
width: '90px',
|
||||||
className: 'text-center',
|
className: 'text-center block-td',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '审核',
|
text: '审核',
|
||||||
@ -311,7 +311,7 @@ export class OrderManagementRiskComponent implements OnInit {
|
|||||||
acl: { ability: ['ORDER-RISK-audit'] },
|
acl: { ability: ['ORDER-RISK-audit'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '详情 ',
|
text: '详情',
|
||||||
click: _record => this.viewEvaluate(_record),
|
click: _record => this.viewEvaluate(_record),
|
||||||
acl: { ability: ['ORDER-RISK-riskDetail'] },
|
acl: { ability: ['ORDER-RISK-riskDetail'] },
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,9 +35,9 @@
|
|||||||
<sv label="录单员">{{ i?.createUserName || i?.goodsResource?.createUserName }} /{{ i?.createUserPhone || i?.goodsResource?.createUserPhone }} </sv>
|
<sv label="录单员">{{ i?.createUserName || i?.goodsResource?.createUserName }} /{{ i?.createUserPhone || i?.goodsResource?.createUserPhone }} </sv>
|
||||||
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
||||||
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
||||||
<sv label="货源编号">{{ i?.resourceCode }} </sv>
|
<sv label="货源编号">{{ i?.goodsResource?.resourceCode }} </sv>
|
||||||
<sv label="运单号">{{ i?.wayBillId }}</sv>
|
<sv label="运单号">{{ i?.wayBillId }}</sv>
|
||||||
<sv label="承诺付款天数">{{ i?.goodsResource?.dispatchName }}</sv>
|
<sv label="承诺付款天数">{{ i?.goodsResource?.paymentDays }}</sv>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<nz-tabset style="margin-top: 15px">
|
<nz-tabset style="margin-top: 15px">
|
||||||
@ -259,7 +259,7 @@
|
|||||||
<sv label="协议附件">
|
<sv label="协议附件">
|
||||||
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
||||||
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
||||||
<a href="javascript:;" (click)="agreement('2')">补充协议</a>
|
<a target="_blank" [routerLink]="['/agreement']" [queryParams]="{ type: 8 }">补充协议</a>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2" class="mt-md">
|
<sv-container col="2" class="mt-md">
|
||||||
@ -318,7 +318,7 @@
|
|||||||
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<st [scroll]="{y: '500px'}" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st [scroll]="{y: '500px'}" style="min-height: 600px;" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
@ -336,6 +336,7 @@
|
|||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
|
<div *ngIf="!imges">暂无附件信息</div>
|
||||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooter>
|
<ng-template #nzModalFooter>
|
||||||
|
|||||||
@ -855,11 +855,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
agreement(value: any) {
|
agreement(value: any) {
|
||||||
if (value === '1') {
|
this.imges = this.i?.agreementFilePath;
|
||||||
this.imges = this.i?.supplementAgreement;
|
|
||||||
} else if (value === '2') {
|
|
||||||
this.imges = this.i?.supplementAgreement;
|
|
||||||
}
|
|
||||||
this.isVisible = true;
|
this.isVisible = true;
|
||||||
}
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
|
|||||||
@ -46,9 +46,9 @@
|
|||||||
<sv label="录单员">{{ i?.createUserName || i?.goodsResource?.createUserName }} /{{ i?.createUserPhone || i?.goodsResource?.createUserPhone }} </sv>
|
<sv label="录单员">{{ i?.createUserName || i?.goodsResource?.createUserName }} /{{ i?.createUserPhone || i?.goodsResource?.createUserPhone }} </sv>
|
||||||
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
||||||
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
||||||
<sv label="货源编号">{{ i?.resourceCode }} </sv>
|
<sv label="货源编号">{{ i?.goodsResource?.resourceCode }} </sv>
|
||||||
<sv label="运单号">{{ i?.wayBillId }}</sv>
|
<sv label="运单号">{{ i?.wayBillId }}</sv>
|
||||||
<sv label="承诺付款天数">{{ i?.goodsResource?.dispatchName }}</sv>
|
<sv label="承诺付款天数">{{ i?.goodsResource?.paymentDays }}</sv>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<nz-tabset style="margin-top: 15px">
|
<nz-tabset style="margin-top: 15px">
|
||||||
@ -140,7 +140,7 @@
|
|||||||
<sv label="货物价值">
|
<sv label="货物价值">
|
||||||
{{i?.goodsResource?.goodsValue !==null?(i?.goodsResource?.goodsValue|currency)+'元':'-'}}
|
{{i?.goodsResource?.goodsValue !==null?(i?.goodsResource?.goodsValue|currency)+'元':'-'}}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="保价费金额">
|
<sv label="服务包费用">
|
||||||
{{i?.goodsResource?.insurancePremium!==null?(i?.goodsResource?.insurancePremium |currency)+'元':'-'}}
|
{{i?.goodsResource?.insurancePremium!==null?(i?.goodsResource?.insurancePremium |currency)+'元':'-'}}
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
@ -171,7 +171,7 @@
|
|||||||
<sv label="协议附件">
|
<sv label="协议附件">
|
||||||
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
||||||
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
||||||
<a href="javascript:;" (click)="agreement('2')">补充协议</a>
|
<a target="_blank" [routerLink]="['/agreement']" [queryParams]="{ type: 8 }">补充协议</a>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2" class="mt-md">
|
<sv-container col="2" class="mt-md">
|
||||||
@ -214,12 +214,12 @@
|
|||||||
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<st [scroll]="{y: '500px'}" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st [scroll]="{y: '500px'}" style="min-height: 600px;" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<amap-path-simplifier [mapWidth]="'100%'" [mapHeight]="'600px'" [MapList]="mapList"></amap-path-simplifier>
|
<amap-path-simplifier [mapWidth]="'100%'" [mapHeight]="'600px'" [MapList]="mapList" [pois]="pois"></amap-path-simplifier>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<ng-template #extraTemplate>
|
<ng-template #extraTemplate>
|
||||||
@ -233,6 +233,7 @@
|
|||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
|
<div *ngIf="!imges">暂无附件信息</div>
|
||||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooter>
|
<ng-template #nzModalFooter>
|
||||||
|
|||||||
@ -124,11 +124,7 @@ export class OrderManagementVehicleDetailComponent implements OnInit {
|
|||||||
this.router.navigate(['order-management/vehicle-detailChange', this.id]);
|
this.router.navigate(['order-management/vehicle-detailChange', this.id]);
|
||||||
}
|
}
|
||||||
agreement(value: any) {
|
agreement(value: any) {
|
||||||
if (value === '1') {
|
this.imges = this.i?.agreementFilePath;
|
||||||
this.imges = this.i?.agreementFilePath;
|
|
||||||
} else if (value === '2') {
|
|
||||||
this.imges = this.i?.agreementFilePath;
|
|
||||||
}
|
|
||||||
this.isVisible = true;
|
this.isVisible = true;
|
||||||
}
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
|
|||||||
@ -86,13 +86,26 @@
|
|||||||
<ng-template st-row="createUserName" let-item let-index="index">
|
<ng-template st-row="createUserName" let-item let-index="index">
|
||||||
<div> {{ item?.createUserName }}/{{ item?.createUserPhone }} </div>
|
<div> {{ item?.createUserName }}/{{ item?.createUserPhone }} </div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="mybidDetailInfo" let-item let-index="index">
|
<!-- <ng-template st-row="mybidDetailInfo" let-item let-index="index">
|
||||||
<div *ngIf="item.mybidDetailInfo.length > 0">
|
<div *ngIf="item.mybidDetailInfo.length > 0">
|
||||||
<p *ngFor="let data of item.mybidDetailInfo">
|
<p *ngFor="let data of item.mybidDetailInfo">
|
||||||
{{ data.expenseName }}:¥{{ data.price | number: '0.2-2' }}
|
{{ data.expenseName }}:¥{{ data.price | number: '0.2-2' }}
|
||||||
<span *ngIf="data.paymentStatusLabel" style="color: #f59a63">{{ data.paymentStatusLabel }}</span>
|
<span *ngIf="data.paymentStatusLabel" style="color: #f59a63">{{ data.paymentStatusLabel }}</span>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
</ng-template> -->
|
||||||
|
<ng-template st-row="mybidDetailInfo" let-item let-index="index">
|
||||||
|
<div *ngIf="item.mybidDetailInfo.length > 0">
|
||||||
|
<div *ngFor="let data of item.mybidDetailInfo">
|
||||||
|
{{ data.expenseName }}:{{ data.price | currency }}
|
||||||
|
<span *ngIf="data.paymentStatus && data.paymentStatus === '1' && data.price>0" style="color: #f59a63">待申请</span>
|
||||||
|
<span *ngIf="data.paymentStatus && data.paymentStatus === '2'" style="color: #f59a63">已支付</span>
|
||||||
|
<span *ngIf="data.paymentStatus && data.paymentStatus === '3'" style="color: #f59a63">已拒绝</span>
|
||||||
|
<span *ngIf="data.paymentStatus && data.paymentStatus === '4'" style="color: #f59a63">申请中</span>
|
||||||
|
<span *ngIf="data.paymentStatus && data.paymentStatus === '5'" style="color: #f59a63">退款中</span>
|
||||||
|
<span *ngIf="data.paymentStatus && data.paymentStatus === '6'" style="color: #f59a63">退款成功</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="billExpenseDetailVOList" let-item let-index="index">
|
<ng-template st-row="billExpenseDetailVOList" let-item let-index="index">
|
||||||
<div *ngFor="let i of item?.billExpenseDetailVOList; let ii = index">
|
<div *ngFor="let i of item?.billExpenseDetailVOList; let ii = index">
|
||||||
@ -201,6 +214,7 @@
|
|||||||
<button nz-button nzType="primary" (click)="modifyFreightPeople()" acl [acl-ability]="['ORDER-VEHICLE-modificationNetworkFreight']"> 修改网络货运人 </button>
|
<button nz-button nzType="primary" (click)="modifyFreightPeople()" acl [acl-ability]="['ORDER-VEHICLE-modificationNetworkFreight']"> 修改网络货运人 </button>
|
||||||
<button nz-button nzType="primary" (click)="modifycaptain()" acl [acl-ability]="['ORDER-VEHICLE-modificationCarCaptain']"> 修改车队长 </button>
|
<button nz-button nzType="primary" (click)="modifycaptain()" acl [acl-ability]="['ORDER-VEHICLE-modificationCarCaptain']"> 修改车队长 </button>
|
||||||
<button
|
<button
|
||||||
|
*ngIf="resourceStatus == 4"
|
||||||
nz-button
|
nz-button
|
||||||
nzType="primary"
|
nzType="primary"
|
||||||
nzGhost
|
nzGhost
|
||||||
|
|||||||
@ -191,8 +191,10 @@ resourceStatus: any;
|
|||||||
_$expand: { type: 'boolean', ui: { hidden: true } },
|
_$expand: { type: 'boolean', ui: { hidden: true } },
|
||||||
billCode: {
|
billCode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '订单号'
|
title: '订单号',
|
||||||
|
ui: {
|
||||||
|
placeholder: '最多100个单号,空号隔开',
|
||||||
|
}
|
||||||
},
|
},
|
||||||
resourceCode: {
|
resourceCode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -436,7 +438,7 @@ resourceStatus: any;
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
width: '130px',
|
width: '130px',
|
||||||
className: 'text-center',
|
className: 'text-center block-td',
|
||||||
buttons: [
|
buttons: [
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -446,50 +448,50 @@ resourceStatus: any;
|
|||||||
acl: { ability: ['ORDER-VEHICLE-ChangeApplyList'] },
|
acl: { ability: ['ORDER-VEHICLE-ChangeApplyList'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看详情 ',
|
text: '查看详情',
|
||||||
click: (item: any) => {
|
click: (item: any) => {
|
||||||
this.router.navigate(['./vehicle-detail', item.id], { relativeTo: this.ar });
|
this.router.navigate(['./vehicle-detail', item.id], { relativeTo: this.ar });
|
||||||
},
|
},
|
||||||
acl: { ability: ['USERCENTER-FREIGHT-USER-view'] },
|
acl: { ability: ['USERCENTER-FREIGHT-USER-view'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看评价 ',
|
text: '查看评价',
|
||||||
click: (_record) => this.viewEvaluate(_record),
|
click: (_record) => this.viewEvaluate(_record),
|
||||||
iif: item => item.billStatus == '5',
|
iif: item => item.billStatus == '5',
|
||||||
acl: { ability: ['ORDER-VEHICLE-evaluation'] },
|
acl: { ability: ['ORDER-VEHICLE-evaluation'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '变更运费 ',
|
text: '变更运费',
|
||||||
click: (_record) => this.updateFreight(_record),
|
click: (_record) => this.updateFreight(_record),
|
||||||
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
|
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus != '2',
|
||||||
acl: { ability: ['ORDER-VEHICLE-FreightChangeWholeDetail'] },
|
acl: { ability: ['ORDER-VEHICLE-FreightChangeWholeDetail'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '确认签收 ',
|
text: '确认签收',
|
||||||
click: (_record) => this.confirmReceipt(_record),
|
click: (_record) => this.confirmReceipt(_record),
|
||||||
iif: item => item.billStatus == '4',
|
iif: item => item.billStatus == '4',
|
||||||
acl: { ability: ['ORDER-VEHICLE-signWholeOrder'] },
|
acl: { ability: ['ORDER-VEHICLE-signWholeOrder'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '取消订单 ',
|
text: '取消订单',
|
||||||
click: (_record) => this.cancellation(_record),
|
click: (_record) => this.cancellation(_record),
|
||||||
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus !== '2',
|
iif: item => item.billStatus !== '1' && item.billStatus !== '6' && item.overallPaymentStatus !== '2',
|
||||||
acl: { ability: ['ORDER-VEHICLE-cancelAnOrder'] },
|
acl: { ability: ['ORDER-VEHICLE-cancelAnOrder'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '修改订单 ',
|
text: '修改订单',
|
||||||
click: (_record) => this.changeOrder(_record),
|
click: (_record) => this.changeOrder(_record),
|
||||||
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3',
|
iif: item => item.billStatus == '4' || item.billStatus == '5' || item.billStatus == '2' || item.billStatus == '3',
|
||||||
acl: { ability: ['ORDER-VEHICLE-modificationOrder'] },
|
acl: { ability: ['ORDER-VEHICLE-modificationOrder'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '申请退款 ',
|
text: '申请退款',
|
||||||
click: (_record) => this.applyRefund(_record),
|
click: (_record) => this.applyRefund(_record),
|
||||||
iif: item => item.isApplyForRefund,
|
iif: item => item.isApplyForRefund,
|
||||||
acl: { ability: ['ORDER-VEHICLE-modificationOrder'] },
|
acl: { ability: ['ORDER-VEHICLE-modificationOrder'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看轨迹 ',
|
text: '查看轨迹',
|
||||||
click: (_record) => this.viewTrack(_record),
|
click: (_record) => this.viewTrack(_record),
|
||||||
iif: item => item.billStatus !== '1' && item.billStatus !== '6',
|
iif: item => item.billStatus !== '1' && item.billStatus !== '6',
|
||||||
// acl: { ability: ['VEHICLE-LIST-view'] },
|
// acl: { ability: ['VEHICLE-LIST-view'] },
|
||||||
@ -748,16 +750,6 @@ resourceStatus: any;
|
|||||||
nzContent: VehicleFreightPeopleComponent,
|
nzContent: VehicleFreightPeopleComponent,
|
||||||
nzComponentParams: { data: { ids: params, enterpriseInfoIds: params2, } },
|
nzComponentParams: { data: { ids: params, enterpriseInfoIds: params2, } },
|
||||||
nzFooter: null,
|
nzFooter: null,
|
||||||
// nzOnOk: sin => {
|
|
||||||
// this.service.request(this.service.$api_change_bulk, { billId: item.id, ...sin.sf.value }).subscribe(res => {
|
|
||||||
// if (res) {
|
|
||||||
// this.service.msgSrv.success('变更运费成功');
|
|
||||||
// modal.destroy();
|
|
||||||
// this.st.reload();
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
// return false;
|
|
||||||
// }
|
|
||||||
});
|
});
|
||||||
modal.afterClose.subscribe((result) => {
|
modal.afterClose.subscribe((result) => {
|
||||||
if (result) {
|
if (result) {
|
||||||
|
|||||||
@ -61,7 +61,7 @@ export class VehicleFreightPeopleComponent implements OnInit {
|
|||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 100,
|
spanLabelFixed: 130,
|
||||||
grid: { span: 16 }
|
grid: { span: 16 }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -80,8 +80,8 @@ export class VehicleFreightPeopleComponent implements OnInit {
|
|||||||
console.log(params);
|
console.log(params);
|
||||||
this.service.request(this.service.$api_set_updateEnterpriseInfoBatch, params).subscribe((res: any) => {
|
this.service.request(this.service.$api_set_updateEnterpriseInfoBatch, params).subscribe((res: any) => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.modal.destroy();
|
this.modal.destroy(true);
|
||||||
this.service.msgSrv.success('变更运费成功');
|
this.service.msgSrv.success('修改网络货运人成功!');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,7 +29,7 @@ export class VehicleModifyRateComponent implements OnInit {
|
|||||||
{ title: '订单号', index: 'billCode' },
|
{ title: '订单号', index: 'billCode' },
|
||||||
{ title: '原附加费率', render: 'oldAdditionalRate' },
|
{ title: '原附加费率', render: 'oldAdditionalRate' },
|
||||||
{ title: '原附加费', render: 'oldSurcharge' },
|
{ title: '原附加费', render: 'oldSurcharge' },
|
||||||
{ title: '新附加费', render: 'newSurcharge' },
|
// { title: '新附加费', render: 'newSurcharge' },
|
||||||
];
|
];
|
||||||
aggreechecked = false;
|
aggreechecked = false;
|
||||||
|
|
||||||
|
|||||||
@ -12,13 +12,13 @@
|
|||||||
<sf #sf mode="edit" [schema]="schema" [ui]="ui" [formData]="formData" button="none">
|
<sf #sf mode="edit" [schema]="schema" [ui]="ui" [formData]="formData" button="none">
|
||||||
<ng-template sf-template="weight" 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">
|
<div style="display: flex">
|
||||||
<nz-input-number [(ngModel)]="data.weight" [nzMin]="1" [nzMax]="999" [nzStep]="1"></nz-input-number>
|
<nz-input-number [(ngModel)]="data.weight" [nzMin]="1" [nzMax]="99999" [nzStep]="0.01" [nzPrecision]="2"></nz-input-number>
|
||||||
<div class="left_btn">吨</div>
|
<div class="left_btn">吨</div>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template sf-template="volume" 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">
|
<div style="display: flex">
|
||||||
<nz-input-number [(ngModel)]="data.volume" [nzMin]="1" [nzMax]="999" [nzStep]="1"></nz-input-number>
|
<nz-input-number [(ngModel)]="data.volume" [nzMin]="1" [nzMax]="99999" [nzStep]="0.01" [nzPrecision]="2"></nz-input-number>
|
||||||
<div class="left_btn">方</div>
|
<div class="left_btn">方</div>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { DatePipe } from '@angular/common';
|
import { DatePipe } from '@angular/common';
|
||||||
import {
|
import {
|
||||||
@ -32,441 +31,455 @@ export class VehicleSureArriveComponent implements OnInit {
|
|||||||
i: any;
|
i: any;
|
||||||
formData: any;
|
formData: any;
|
||||||
Status: any;
|
Status: any;
|
||||||
data: any ={
|
data: any = {
|
||||||
weight: 0,
|
weight: 0,
|
||||||
volume: 0
|
volume: 0
|
||||||
};
|
};
|
||||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
ui: SFUISchema = {};
|
ui: SFUISchema = {};
|
||||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient, public service: WaybillManagementServe,private datePipe: DatePipe,private envSrv: EAEnvironmentService, ) {}
|
constructor(
|
||||||
|
private modal: NzModalRef,
|
||||||
|
private msgSrv: NzMessageService,
|
||||||
|
public http: _HttpClient,
|
||||||
|
public service: WaybillManagementServe,
|
||||||
|
private datePipe: DatePipe,
|
||||||
|
private envSrv: EAEnvironmentService
|
||||||
|
) {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
console.log(this.i)
|
console.log(this.i);
|
||||||
this.initData()
|
this.initData();
|
||||||
this.i.time = this.i?.loadingTime;
|
this.i.time = this.i?.loadingTime;
|
||||||
this.initSF();
|
this.initSF();
|
||||||
}
|
}
|
||||||
initSF() {
|
initSF() {
|
||||||
if(this.Status === 1) {
|
if (this.Status === 1) {
|
||||||
|
this.schema = {
|
||||||
this.schema = {
|
properties: {
|
||||||
properties: {
|
time: {
|
||||||
time: {
|
type: 'string',
|
||||||
type: 'string',
|
title: '卸货时间',
|
||||||
title: '卸货时间',
|
format: 'date-time'
|
||||||
format: 'date-time',
|
},
|
||||||
|
imgUrl3: {
|
||||||
|
type: 'string',
|
||||||
|
title: '装货凭证',
|
||||||
|
readOnly: true,
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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'
|
||||||
|
} as SFUploadWidgetSchema
|
||||||
|
},
|
||||||
|
imgUrl4: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
readOnly: true,
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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'
|
||||||
|
} as SFUploadWidgetSchema
|
||||||
|
},
|
||||||
|
no4: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
ui: {
|
||||||
|
widget: 'text'
|
||||||
|
},
|
||||||
|
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式'
|
||||||
|
},
|
||||||
|
imgUrl1: {
|
||||||
|
type: 'string',
|
||||||
|
title: '卸货凭证',
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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'
|
||||||
|
} as SFUploadWidgetSchema
|
||||||
|
},
|
||||||
|
imgUrl2: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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'
|
||||||
|
} as SFUploadWidgetSchema
|
||||||
|
}
|
||||||
},
|
},
|
||||||
imgUrl3: {
|
required: ['time']
|
||||||
type: 'string',
|
};
|
||||||
title: '装货凭证',
|
} else {
|
||||||
readOnly: true,
|
this.schema = {
|
||||||
ui: {
|
properties: {
|
||||||
widget: 'upload',
|
time: {
|
||||||
action: apiConf.fileUpload,
|
type: 'string',
|
||||||
accept: 'image/png,image/jpeg,image/jpg,image/gif',
|
title: '卸货时间',
|
||||||
limit: 1,
|
format: 'date-time'
|
||||||
limitFileCount: 1,
|
},
|
||||||
resReName: 'data.fullFileWatermarkPath',
|
weight: {
|
||||||
urlReName: 'data.fullFileWatermarkPath',
|
type: 'string',
|
||||||
descriptionI18n: '提货单',
|
title: '卸货重量',
|
||||||
data: {
|
ui: {
|
||||||
appId: this.envSrv.env.appId,
|
widget: 'custom'
|
||||||
},
|
}
|
||||||
name: 'multipartFile',
|
},
|
||||||
beforeUpload: (file: any, fileList: any) => {
|
volume: {
|
||||||
return new Observable((observer: Observer<boolean>) => {
|
type: 'string',
|
||||||
const isLt1M = file.size / 1024 / 1024 < 5;
|
title: '卸货体积',
|
||||||
const fileType = 'image/png,image/jpeg,image/jpg,image/gif';
|
ui: {
|
||||||
if (fileType.indexOf(file.type) === -1) {
|
widget: 'custom'
|
||||||
this.service.msgSrv.warning('图片格式不正确!');
|
}
|
||||||
|
},
|
||||||
|
imgUrl3: {
|
||||||
|
type: 'string',
|
||||||
|
title: '装货凭证',
|
||||||
|
readOnly: true,
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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();
|
observer.complete();
|
||||||
return;
|
});
|
||||||
}
|
},
|
||||||
if (!isLt1M) {
|
multiple: false,
|
||||||
this.service.msgSrv.warning('图片大小超过5M!');
|
listType: 'picture-card'
|
||||||
|
} as SFUploadWidgetSchema
|
||||||
|
},
|
||||||
|
imgUrl4: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
readOnly: true,
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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();
|
observer.complete();
|
||||||
return;
|
});
|
||||||
}
|
},
|
||||||
observer.next(isLt1M);
|
multiple: false,
|
||||||
observer.complete();
|
listType: 'picture-card'
|
||||||
});
|
} as SFUploadWidgetSchema
|
||||||
|
},
|
||||||
|
no4: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
ui: {
|
||||||
|
widget: 'text'
|
||||||
},
|
},
|
||||||
multiple: false,
|
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式'
|
||||||
listType: 'picture-card',
|
},
|
||||||
} as SFUploadWidgetSchema,
|
imgUrl1: {
|
||||||
|
type: 'string',
|
||||||
|
title: '卸货凭证',
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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'
|
||||||
|
} as SFUploadWidgetSchema
|
||||||
|
},
|
||||||
|
imgUrl2: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
ui: {
|
||||||
|
widget: 'upload',
|
||||||
|
action: apiConf.fileUpload,
|
||||||
|
accept: '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,image/jpg,image/gif';
|
||||||
|
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'
|
||||||
|
} as SFUploadWidgetSchema
|
||||||
|
}
|
||||||
},
|
},
|
||||||
imgUrl4: {
|
required: ['time', 'weight', 'volume']
|
||||||
type: 'string',
|
};
|
||||||
title: '',
|
}
|
||||||
readOnly: true,
|
|
||||||
ui: {
|
|
||||||
widget: 'upload',
|
|
||||||
action: apiConf.fileUpload,
|
|
||||||
accept: '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,image/jpg,image/gif';
|
|
||||||
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',
|
|
||||||
} as SFUploadWidgetSchema,
|
|
||||||
},
|
|
||||||
no4: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'text',
|
|
||||||
},
|
|
||||||
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式',
|
|
||||||
},
|
|
||||||
imgUrl1: {
|
|
||||||
type: 'string',
|
|
||||||
title: '卸货凭证',
|
|
||||||
ui: {
|
|
||||||
widget: 'upload',
|
|
||||||
action: apiConf.fileUpload,
|
|
||||||
accept: '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,image/jpg,image/gif';
|
|
||||||
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',
|
|
||||||
} as SFUploadWidgetSchema,
|
|
||||||
},
|
|
||||||
imgUrl2: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'upload',
|
|
||||||
action: apiConf.fileUpload,
|
|
||||||
accept: '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,image/jpg,image/gif';
|
|
||||||
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',
|
|
||||||
} as SFUploadWidgetSchema,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
required: ['time']
|
|
||||||
};
|
|
||||||
}else {
|
|
||||||
this.schema = {
|
|
||||||
properties: {
|
|
||||||
time: {
|
|
||||||
type: 'string',
|
|
||||||
title: '卸货时间',
|
|
||||||
format: 'date-time',
|
|
||||||
},
|
|
||||||
weight: {
|
|
||||||
type: 'string',
|
|
||||||
title: '卸货重量',
|
|
||||||
ui: {
|
|
||||||
widget: 'custom',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
volume: {
|
|
||||||
type: 'string',
|
|
||||||
title: '卸货体积',
|
|
||||||
ui: {
|
|
||||||
widget: 'custom',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
imgUrl3: {
|
|
||||||
type: 'string',
|
|
||||||
title: '装货凭证',
|
|
||||||
readOnly: true,
|
|
||||||
ui: {
|
|
||||||
widget: 'upload',
|
|
||||||
action: apiConf.fileUpload,
|
|
||||||
accept: '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,image/jpg,image/gif';
|
|
||||||
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',
|
|
||||||
} as SFUploadWidgetSchema,
|
|
||||||
},
|
|
||||||
imgUrl4: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
readOnly: true,
|
|
||||||
ui: {
|
|
||||||
widget: 'upload',
|
|
||||||
action: apiConf.fileUpload,
|
|
||||||
accept: '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,image/jpg,image/gif';
|
|
||||||
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',
|
|
||||||
} as SFUploadWidgetSchema,
|
|
||||||
},
|
|
||||||
no4: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'text',
|
|
||||||
},
|
|
||||||
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式',
|
|
||||||
},
|
|
||||||
imgUrl1: {
|
|
||||||
type: 'string',
|
|
||||||
title: '卸货凭证',
|
|
||||||
ui: {
|
|
||||||
widget: 'upload',
|
|
||||||
action: apiConf.fileUpload,
|
|
||||||
accept: '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,image/jpg,image/gif';
|
|
||||||
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',
|
|
||||||
} as SFUploadWidgetSchema,
|
|
||||||
},
|
|
||||||
imgUrl2: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'upload',
|
|
||||||
action: apiConf.fileUpload,
|
|
||||||
accept: '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,image/jpg,image/gif';
|
|
||||||
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',
|
|
||||||
} as SFUploadWidgetSchema,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
required: ['time' ]
|
|
||||||
};
|
|
||||||
}
|
|
||||||
this.ui = {
|
this.ui = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 100,
|
spanLabelFixed: 100,
|
||||||
grid: { span: 20 }
|
grid: { span: 20 }
|
||||||
},
|
},
|
||||||
$imgUrl1: { grid: { span: 12} },
|
$imgUrl1: { grid: { span: 12 } },
|
||||||
$imgUrl2: { grid: { span: 12} },
|
$imgUrl2: { grid: { span: 12 } },
|
||||||
$imgUrl3: { grid: { span: 12} },
|
$imgUrl3: { grid: { span: 12 } },
|
||||||
$imgUrl4: { grid: { span: 12} },
|
$imgUrl4: { grid: { span: 12 } }
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
save(value: any): void {
|
save(value: any): void {
|
||||||
if(this.Status === 1) {
|
if (this.Status === 1) {
|
||||||
if(!value.time) {
|
if (!value.time) {
|
||||||
this.service.msgSrv.warning('卸货时间为空!')
|
this.service.msgSrv.warning('卸货时间为空!');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const params = {
|
const params = {
|
||||||
id: this.i.id,
|
id: this.i.id,
|
||||||
imgUrl1: value?.imgUrl1?.data?.fullFilePath,
|
imgUrl1: value?.imgUrl1?.data?.fullFilePath,
|
||||||
imgUrl2: value?.imgUrl2?.data?.fullFilePath,
|
imgUrl2: value?.imgUrl2?.data?.fullFilePath,
|
||||||
time: value?.time,
|
time: value?.time
|
||||||
}
|
};
|
||||||
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ')
|
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ');
|
||||||
this.service.request(this.service.$api_get_insertWholeUnloadCarInfo, params).subscribe((res) => {
|
|
||||||
if(res) {
|
|
||||||
this.service.msgSrv.success('确认到车成功!')
|
|
||||||
this.modal.destroy(true);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
if(!value.time ) {
|
|
||||||
this.service.msgSrv.warning('卸货时间为空!')
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
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
|
|
||||||
}
|
|
||||||
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ')
|
|
||||||
this.service.request(this.service.$api_get_insertBulkUnloadCarInfo, params).subscribe((res) => {
|
|
||||||
if(res) {
|
|
||||||
this.service.msgSrv.success('确认到车成功!')
|
|
||||||
this.modal.destroy(true);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
|
this.service.request(this.service.$api_get_insertWholeUnloadCarInfo, params).subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.service.msgSrv.success('确认到车成功!');
|
||||||
|
this.modal.destroy(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
if (!value?.time) {
|
||||||
|
this.service.msgSrv.warning('装货时间为空!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!this.data?.volume) {
|
||||||
|
this.service.msgSrv.warning('装货重量为空!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!this.data?.weight) {
|
||||||
|
this.service.msgSrv.warning('装货体积为空!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
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
|
||||||
|
};
|
||||||
|
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ');
|
||||||
|
this.service.request(this.service.$api_get_insertBulkUnloadCarInfo, params).subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.service.msgSrv.success('确认到车成功!');
|
||||||
|
this.modal.destroy(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// 确认到车界面信息(两个只能看的图片)
|
// 确认到车界面信息(两个只能看的图片)
|
||||||
initData() {
|
initData() {
|
||||||
this.service.request(this.service.$api_get_getUnloadCarInfo, { id : this.i?.id}).subscribe((res) => {
|
this.service.request(this.service.$api_get_getUnloadCarInfo, { id: this.i?.id }).subscribe(res => {
|
||||||
console.log(res)
|
console.log(res);
|
||||||
if (res.imgUrl1) {
|
if (res.imgUrl1) {
|
||||||
this.formData = {
|
this.formData = {
|
||||||
imgUrl3: [
|
imgUrl3: [
|
||||||
@ -476,10 +489,10 @@ export class VehicleSureArriveComponent implements OnInit {
|
|||||||
status: 'done',
|
status: 'done',
|
||||||
url: res.imgUrl1,
|
url: res.imgUrl1,
|
||||||
response: {
|
response: {
|
||||||
url: res.imgUrl1,
|
url: res.imgUrl1
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
imgUrl4: [
|
imgUrl4: [
|
||||||
{
|
{
|
||||||
uid: 'logo',
|
uid: 'logo',
|
||||||
@ -487,16 +500,15 @@ export class VehicleSureArriveComponent implements OnInit {
|
|||||||
status: 'done',
|
status: 'done',
|
||||||
url: res.imgUrl2,
|
url: res.imgUrl2,
|
||||||
response: {
|
response: {
|
||||||
url: res.imgUrl2,
|
url: res.imgUrl2
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
],
|
]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
close(): void {
|
close(): void {
|
||||||
this.modal.destroy(true);
|
this.modal.destroy(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,13 +12,13 @@
|
|||||||
<sf #sf mode="edit" [schema]="schema" [ui]="ui" [formData]="i" button="none">
|
<sf #sf mode="edit" [schema]="schema" [ui]="ui" [formData]="i" button="none">
|
||||||
<ng-template sf-template="weight" 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">
|
<div style="display: flex">
|
||||||
<nz-input-number [(ngModel)]="data.weight" [nzMin]="1" [nzMax]="999999" [nzStep]="1"></nz-input-number>
|
<nz-input-number [(ngModel)]="data.weight" [nzMin]="1" [nzMax]="999999" [nzPrecision]="2" [nzStep]="0.01"></nz-input-number>
|
||||||
<div class="left_btn">吨</div>
|
<div class="left_btn">吨</div>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template sf-template="volume" 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">
|
<div style="display: flex">
|
||||||
<nz-input-number [(ngModel)]="data.volume" [nzMin]="1" [nzMax]="999999" [nzStep]="1"></nz-input-number>
|
<nz-input-number [(ngModel)]="data.volume" [nzMin]="1" [nzMax]="999999" [nzStep]="0.01" [nzPrecision]="2"></nz-input-number>
|
||||||
<div class="left_btn">方</div>
|
<div class="left_btn">方</div>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import {
|
import {
|
||||||
SFComponent,
|
SFComponent,
|
||||||
@ -31,37 +30,44 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
record: any = {};
|
record: any = {};
|
||||||
i: any;
|
i: any;
|
||||||
Status: any;
|
Status: any;
|
||||||
data: any ={
|
data: any = {
|
||||||
weight: '',
|
weight: '',
|
||||||
volume: ''
|
volume: ''
|
||||||
};
|
};
|
||||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
ui: SFUISchema = {};
|
ui: SFUISchema = {};
|
||||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient, public service: WaybillManagementServe, private envSrv: EAEnvironmentService,private datePipe: DatePipe) {}
|
constructor(
|
||||||
|
private modal: NzModalRef,
|
||||||
|
private msgSrv: NzMessageService,
|
||||||
|
public http: _HttpClient,
|
||||||
|
public service: WaybillManagementServe,
|
||||||
|
private envSrv: EAEnvironmentService,
|
||||||
|
private datePipe: DatePipe
|
||||||
|
) {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
console.log(this.i)
|
console.log(this.i);
|
||||||
this.data.weight = this.i?.weight
|
this.data.weight = this.i?.weight;
|
||||||
this.i.time = this.i.loadingTime;
|
this.i.time = this.i.loadingTime;
|
||||||
}
|
}
|
||||||
initSF() {
|
initSF() {
|
||||||
if(this.Status === 1) {
|
if (this.Status === 1) {
|
||||||
this.schema = {
|
this.schema = {
|
||||||
properties: {
|
properties: {
|
||||||
time: {
|
time: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '装货时间',
|
title: '装货时间',
|
||||||
format: 'date-time',
|
format: 'date-time'
|
||||||
},
|
},
|
||||||
no4: {
|
no4: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '',
|
title: '',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
},
|
},
|
||||||
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式',
|
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式'
|
||||||
},
|
},
|
||||||
imgUrl1: {
|
imgUrl1: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -76,7 +82,7 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
urlReName: 'data.fullFileWatermarkPath',
|
urlReName: 'data.fullFileWatermarkPath',
|
||||||
descriptionI18n: '提货单',
|
descriptionI18n: '提货单',
|
||||||
data: {
|
data: {
|
||||||
appId: this.envSrv.env.appId,
|
appId: this.envSrv.env.appId
|
||||||
},
|
},
|
||||||
name: 'multipartFile',
|
name: 'multipartFile',
|
||||||
beforeUpload: (file: any, fileList: any) => {
|
beforeUpload: (file: any, fileList: any) => {
|
||||||
@ -98,8 +104,8 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card'
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema
|
||||||
},
|
},
|
||||||
imgUrl2: {
|
imgUrl2: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -114,7 +120,7 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
urlReName: 'data.fullFileWatermarkPath',
|
urlReName: 'data.fullFileWatermarkPath',
|
||||||
descriptionI18n: '人车货照片',
|
descriptionI18n: '人车货照片',
|
||||||
data: {
|
data: {
|
||||||
appId: this.envSrv.env.appId,
|
appId: this.envSrv.env.appId
|
||||||
},
|
},
|
||||||
name: 'multipartFile',
|
name: 'multipartFile',
|
||||||
beforeUpload: (file: any, fileList: any) => {
|
beforeUpload: (file: any, fileList: any) => {
|
||||||
@ -136,8 +142,8 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card'
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['time']
|
required: ['time']
|
||||||
@ -148,29 +154,29 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
time: {
|
time: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '装货时间',
|
title: '装货时间',
|
||||||
format: 'date-time',
|
format: 'date-time'
|
||||||
},
|
},
|
||||||
weight: {
|
weight: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '装货重量',
|
title: '装货重量',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'custom',
|
widget: 'custom'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
volume: {
|
volume: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '装货体积',
|
title: '装货体积',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'custom',
|
widget: 'custom'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
no4: {
|
no4: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '',
|
title: '',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
},
|
},
|
||||||
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式',
|
default: '单张大小不超过5M,支持.jpg、.jpeg和 .png格式'
|
||||||
},
|
},
|
||||||
imgUrl1: {
|
imgUrl1: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -185,7 +191,7 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
urlReName: 'data.fullFileWatermarkPath',
|
urlReName: 'data.fullFileWatermarkPath',
|
||||||
descriptionI18n: '提货单',
|
descriptionI18n: '提货单',
|
||||||
data: {
|
data: {
|
||||||
appId: this.envSrv.env.appId,
|
appId: this.envSrv.env.appId
|
||||||
},
|
},
|
||||||
name: 'multipartFile',
|
name: 'multipartFile',
|
||||||
beforeUpload: (file: any, fileList: any) => {
|
beforeUpload: (file: any, fileList: any) => {
|
||||||
@ -207,8 +213,8 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card'
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema
|
||||||
},
|
},
|
||||||
imgUrl2: {
|
imgUrl2: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -223,7 +229,7 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
urlReName: 'data.fullFileWatermarkPath',
|
urlReName: 'data.fullFileWatermarkPath',
|
||||||
descriptionI18n: '人车货照片',
|
descriptionI18n: '人车货照片',
|
||||||
data: {
|
data: {
|
||||||
appId: this.envSrv.env.appId,
|
appId: this.envSrv.env.appId
|
||||||
},
|
},
|
||||||
name: 'multipartFile',
|
name: 'multipartFile',
|
||||||
beforeUpload: (file: any, fileList: any) => {
|
beforeUpload: (file: any, fileList: any) => {
|
||||||
@ -245,69 +251,75 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card'
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['time']
|
required: ['time', 'weight', 'volume']
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
this.ui = {
|
this.ui = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 100,
|
spanLabelFixed: 100,
|
||||||
grid: { span: 20 }
|
grid: { span: 20 }
|
||||||
},
|
},
|
||||||
$imgUrl1: { grid: { span: 12} },
|
$imgUrl1: { grid: { span: 12 } },
|
||||||
$imgUrl2: { grid: { span: 12} },
|
$imgUrl2: { grid: { span: 12 } }
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
save(value: any): void {
|
save(value: any): void {
|
||||||
if(this.Status === 1) {
|
if (this.Status === 1) {
|
||||||
if(!value?.time) {
|
if (!value?.time) {
|
||||||
this.service.msgSrv.warning('装货时间为空!')
|
this.service.msgSrv.warning('装货时间为空!');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const params = {
|
const params = {
|
||||||
|
id: this.i.id,
|
||||||
|
imgUrl1: value?.imgUrl1?.data?.fullFilePath,
|
||||||
|
imgUrl2: value?.imgUrl2?.data?.fullFilePath,
|
||||||
|
time: value?.time
|
||||||
|
};
|
||||||
|
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ');
|
||||||
|
this.service.request(this.service.$api_get_insertWholeStartCarInfo, params).subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.service.msgSrv.success('确认发车成功!');
|
||||||
|
this.modal.destroy(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
if (!value?.time) {
|
||||||
|
this.service.msgSrv.warning('装货时间为空!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!this.data?.volume) {
|
||||||
|
this.service.msgSrv.warning('装货重量为空!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!this.data?.weight) {
|
||||||
|
this.service.msgSrv.warning('装货体积为空!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
console.log(value);
|
||||||
|
const params = {
|
||||||
id: this.i.id,
|
id: this.i.id,
|
||||||
imgUrl1: value?.imgUrl1?.data?.fullFilePath,
|
imgUrl1: value?.imgUrl1?.data?.fullFilePath,
|
||||||
imgUrl2: value?.imgUrl2?.data?.fullFilePath,
|
imgUrl2: value?.imgUrl2?.data?.fullFilePath,
|
||||||
time: value?.time,
|
time: value?.time,
|
||||||
}
|
volume: this.data?.volume,
|
||||||
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ')
|
weight: this.data?.weight
|
||||||
this.service.request(this.service.$api_get_insertWholeStartCarInfo, params).subscribe((res) => {
|
};
|
||||||
if(res) {
|
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ');
|
||||||
this.service.msgSrv.success('确认发车成功!')
|
this.service.request(this.service.$api_get_insertBulkStartCarInfo, params).subscribe(res => {
|
||||||
this.modal.destroy(true);
|
if (res) {
|
||||||
|
this.service.msgSrv.success('确认发车成功!');
|
||||||
|
this.modal.destroy(true);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
} else {
|
|
||||||
if(!value?.time) {
|
|
||||||
this.service.msgSrv.warning('装货时间为空!')
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
console.log(value)
|
|
||||||
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
|
|
||||||
}
|
|
||||||
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ')
|
|
||||||
this.service.request(this.service.$api_get_insertBulkStartCarInfo, params).subscribe((res) => {
|
|
||||||
if(res) {
|
|
||||||
this.service.msgSrv.success('确认发车成功!')
|
|
||||||
this.modal.destroy(true);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
close(): void {
|
close(): void {
|
||||||
this.modal.destroy(true);
|
this.modal.destroy(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@
|
|||||||
<nz-card nzTitle="轨迹信息" [nzExtra]="extraTemplate" >
|
<nz-card nzTitle="轨迹信息" [nzExtra]="extraTemplate" >
|
||||||
<div style="display: flex; flex: 1;">
|
<div style="display: flex; flex: 1;">
|
||||||
<div style=" flex: 1;">
|
<div style=" flex: 1;">
|
||||||
<st #st [scroll]="{y: '500px'}" [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st #st [scroll]="{y: '500px'}" style="min-height: 600px;" [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<div style="flex: 1;" >
|
<div style="flex: 1;" >
|
||||||
|
|||||||
@ -40,14 +40,14 @@
|
|||||||
<div class="approval-status">
|
<div class="approval-status">
|
||||||
<div style="width: 60%; margin: 0 auto">
|
<div style="width: 60%; margin: 0 auto">
|
||||||
<nz-steps style="width: 70%; margin: 0 auto" [nzLabelPlacement]="'vertical'">
|
<nz-steps style="width: 70%; margin: 0 auto" [nzLabelPlacement]="'vertical'">
|
||||||
<nz-step [nzStatus]="i?.resourceStatus !== '1' ? 'finish' : 'process'" nzIcon="solution"
|
<nz-step [nzStatus]="i?.resourceStatus !== '1'?'finish':'process'" nzIcon="solution"
|
||||||
[nzDescription]="i?.createAt" nzTitle="下单" [nzSubtitle]="i?.createTime"></nz-step>
|
[nzDescription]="i?.createTime" nzTitle="下单"></nz-step>
|
||||||
<nz-step *ngIf="i?.resourceStatus === '1' || i?.resourceStatus === '2'"
|
<nz-step *ngIf="i?.resourceStatus === '1' || i?.resourceStatus === '4' "
|
||||||
[nzStatus]="i?.resourceStatus === '1' ? 'wait' : 'finish'" nzIcon="file-done"
|
[nzStatus]="i?.resourceStatus=== '1'? 'wait':'finish'" nzIcon="file-done"
|
||||||
[nzTitle]="i?.resourceStatus === '2' ? '已完结' : '完结'" [nzSubtitle]="i?.endTime"></nz-step>
|
[nzTitle]="i?.resourceStatus === '4'?'已完结':'完结'" [nzDescription]="i?.endTime"></nz-step>
|
||||||
|
|
||||||
<nz-step nzStatus="finish" nzIcon="close-circle" nzTitle="取消货源" *ngIf="i?.resourceStatus === '3'"
|
<nz-step nzStatus="finish" nzIcon="close-circle" nzTitle="取消货源" *ngIf="i?.resourceStatus === '3'"
|
||||||
[nzSubtitle]="i?.endTime"></nz-step>
|
[nzDescription]="i?.endTime"></nz-step>
|
||||||
|
|
||||||
</nz-steps>
|
</nz-steps>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -56,17 +56,23 @@
|
|||||||
<nz-card nzTitle="基本信息">
|
<nz-card nzTitle="基本信息">
|
||||||
<sv-container col="3">
|
<sv-container col="3">
|
||||||
<sv-title>货物信息</sv-title>
|
<sv-title>货物信息</sv-title>
|
||||||
<ng-container *ngFor="let item of i?.goodsInfoList">
|
<ng-container *ngFor="let item of i?.goodsInfoVOList">
|
||||||
<sv label="货物名称">
|
<sv label="货物名称">
|
||||||
{{ item?.goodsName }}
|
{{item.goodsTypeName}} > {{item.goodsName}}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="货物数量"> {{ item?.weight }}吨 | {{ item?.volume }}方 </sv>
|
<sv label="货物数量">
|
||||||
<sv label="剩余"> {{ 10 }}吨 | {{ 10 }}方 </sv>
|
{{item.weight}}吨 / {{item.volume>=0?item.volume:'-'}}方
|
||||||
<sv label="用车需求"> {{ item?.carModel }} | {{ item?.carLength }}米 </sv>
|
|
||||||
<sv label="承运信息">
|
|
||||||
{{ i?.carrierInformationVO?.driverName }} / {{ i?.carrierInformationVO?.driverTelephone }} /
|
|
||||||
{{ i?.carrierInformationVO?.driverLicensePlate }}
|
|
||||||
</sv>
|
</sv>
|
||||||
|
<sv label="剩余">
|
||||||
|
{{i?.surplusWeight!==null?i?.surplusWeight:'--'}}吨 / {{i?.surplusVolume!==null?i?.surplusVolume:'-'}}方
|
||||||
|
</sv>
|
||||||
|
<sv label="用车需求">
|
||||||
|
{{item.carModelLabel || '--'}} / {{item.carLengthLabel || '--'}}<span *ngIf="item.carLength !=='999'">米</span>
|
||||||
|
</sv>
|
||||||
|
<!-- <sv label="承运信息">
|
||||||
|
{{i?.carrierInformationVO?.driverName}} / {{i?.carrierInformationVO?.driverTelephone}} /
|
||||||
|
{{i?.carrierInformationVO?.driverLicensePlate}}
|
||||||
|
</sv> -->
|
||||||
<!-- <sv label="当前指派">
|
<!-- <sv label="当前指派">
|
||||||
<a (click)="viewCurrentAssign(i)">查看</a>
|
<a (click)="viewCurrentAssign(i)">查看</a>
|
||||||
</sv> -->
|
</sv> -->
|
||||||
@ -123,15 +129,16 @@
|
|||||||
</div>
|
</div>
|
||||||
<nz-divider class="mb-xs mt-xs"></nz-divider>
|
<nz-divider class="mb-xs mt-xs"></nz-divider>
|
||||||
<div class="text-right">
|
<div class="text-right">
|
||||||
<label>单价:</label>
|
<label>运费单价:</label>
|
||||||
<span class="text-error-dark text-xxl">{{ item?.freightPrice | currency: '¥' }} {{
|
<span class="text-error-dark text-xxl">{{ item?.freightPrice | currency: '¥' }} {{
|
||||||
freightType[item?.freightType] }}</span>
|
freightType[item?.freightType] }}</span>
|
||||||
|
<span>(附加费率{{i?.rate * 100 | number: '0.2-2'}}%)</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card nzTitle="关联运单">
|
<nz-card nzTitle="关联订单">
|
||||||
<sv-container col="5">
|
<sv-container col="5">
|
||||||
<sv [label]="item?.wayBillStatusLabel" *ngFor="let item of i?.wayBillClassifiedStatisticsVOList">
|
<sv [label]="item?.wayBillStatusLabel" *ngFor="let item of i?.wayBillClassifiedStatisticsVOList">
|
||||||
(<span [ngClass]="{ 'text-primary': item?.count > 0 }">{{ item?.count }}</span>)
|
(<span [ngClass]="{ 'text-primary': item?.count > 0 }">{{ item?.count }}</span>)
|
||||||
|
|||||||
@ -126,13 +126,12 @@
|
|||||||
<sf #sf4 [schema]="schema4" [formData]="sf4data" [button]="'none'" [ui]="ui4">
|
<sf #sf4 [schema]="schema4" [formData]="sf4data" [button]="'none'" [ui]="ui4">
|
||||||
<ng-template sf-template="freightPrice" let-i let-ui="ui">
|
<ng-template sf-template="freightPrice" let-i let-ui="ui">
|
||||||
<nz-input-group [nzAddOnAfter]="addOnAfterTemplate">
|
<nz-input-group [nzAddOnAfter]="addOnAfterTemplate">
|
||||||
<nz-input-number [ngModel]="i.value" (ngModelChange)="i.setValue($event)" [nzMin]="1" style="width: 100%"></nz-input-number>
|
<nz-input-number [nzMax]="99999" [nzMin] ="0" nzPlaceHolder="请输入" type="number" [ngModel]="i.value"
|
||||||
|
(ngModelChange)="i.setValue($event)" [nzPrecision]="2" style="width: 100%;"></nz-input-number>
|
||||||
</nz-input-group>
|
</nz-input-group>
|
||||||
<ng-template #addOnAfterTemplate>
|
<ng-template #addOnAfterTemplate>
|
||||||
<nz-select [ngModel]="sf4.value.freightType" (ngModelChange)="sf4.setValue('/freightType', $event)">
|
<nz-select [ngModel]="sf4.value.freightType" (ngModelChange)="sf4.setValue('/freightType', $event)">
|
||||||
<nz-option nzLabel="元/吨" nzValue="1"></nz-option>
|
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of freightTypeOptions"> </nz-option>
|
||||||
<nz-option nzLabel="元/方" nzValue="2"></nz-option>
|
|
||||||
<nz-option nzLabel="元/车" nzValue="3"></nz-option>
|
|
||||||
</nz-select>
|
</nz-select>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -41,6 +41,8 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
totalTime = 0.0; //路程总时间
|
totalTime = 0.0; //路程总时间
|
||||||
currentGoodsTypeName: any;
|
currentGoodsTypeName: any;
|
||||||
enterpriseProjectIds: any;
|
enterpriseProjectIds: any;
|
||||||
|
freightTypeOptions: any;
|
||||||
|
ruleOptions: any;
|
||||||
id = this.route.snapshot.params.id; // 传参id
|
id = this.route.snapshot.params.id; // 传参id
|
||||||
// // 单位
|
// // 单位
|
||||||
startInfo: any = [];
|
startInfo: any = [];
|
||||||
@ -104,6 +106,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
this.initSF4();
|
this.initSF4();
|
||||||
this.initSF6();
|
this.initSF6();
|
||||||
this.initdata();
|
this.initdata();
|
||||||
|
this.initDict();
|
||||||
this.getLimitvalue();
|
this.getLimitvalue();
|
||||||
}
|
}
|
||||||
initSF1() {
|
initSF1() {
|
||||||
@ -190,10 +193,10 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
type: 'string',
|
type: 'string',
|
||||||
title: '调度员手机号',
|
title: '调度员手机号',
|
||||||
maxLength: 30,
|
maxLength: 30,
|
||||||
ui: {
|
ui: {
|
||||||
placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
required: ['shipperAppUserId', 'enterpriseProjectId', 'enterpriseInfoName', 'deadlineTime']
|
required: ['shipperAppUserId', 'enterpriseProjectId', 'enterpriseInfoName', 'deadlineTime']
|
||||||
};
|
};
|
||||||
@ -201,7 +204,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 115,
|
spanLabelFixed: 115,
|
||||||
grid: { span: 12 }
|
grid: { span: 12 }
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
initSF3() {
|
initSF3() {
|
||||||
@ -272,7 +275,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['goodsTypeId', 'goodsName', 'goodsNameId','goodsName1']
|
required: ['goodsTypeId', 'goodsName', 'goodsNameId', 'goodsName1']
|
||||||
};
|
};
|
||||||
this.ui3 = {
|
this.ui3 = {
|
||||||
'*': {
|
'*': {
|
||||||
@ -301,7 +304,6 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
default: '1'
|
default: '1'
|
||||||
},
|
},
|
||||||
|
|
||||||
rule: {
|
rule: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '',
|
title: '',
|
||||||
@ -532,6 +534,14 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
Number(this.sf7?.value?.receiptPay) +
|
Number(this.sf7?.value?.receiptPay) +
|
||||||
Number(this.sf7?.value?.toPay);
|
Number(this.sf7?.value?.toPay);
|
||||||
}
|
}
|
||||||
|
initDict() {
|
||||||
|
this.service.getDictByKey('freight:type').subscribe(res => {
|
||||||
|
this.freightTypeOptions = res;
|
||||||
|
});
|
||||||
|
this.service.getDictByKey('goodresource:rounding:rules').subscribe(res => {
|
||||||
|
this.ruleOptions = res;
|
||||||
|
});
|
||||||
|
}
|
||||||
// 获取城市列表
|
// 获取城市列表
|
||||||
getRegionCode(regionCode: any) {
|
getRegionCode(regionCode: any) {
|
||||||
return this.service
|
return this.service
|
||||||
@ -706,7 +716,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
unLoadingPlaceDTOList: LoadingList,
|
unLoadingPlaceDTOList: LoadingList,
|
||||||
goodsInfoDTOList: goodsInfoDTOList,
|
goodsInfoDTOList: goodsInfoDTOList,
|
||||||
estimatedKilometers: this.totalDistance,
|
estimatedKilometers: this.totalDistance,
|
||||||
estimatedTravelTime: this.totalTime,
|
estimatedTravelTime: this.totalTime
|
||||||
};
|
};
|
||||||
params.freightPrice = this.totalFees;
|
params.freightPrice = this.totalFees;
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
@ -714,7 +724,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
nzContent: TranAgreementComponent,
|
nzContent: TranAgreementComponent,
|
||||||
nzWidth: 900,
|
nzWidth: 900,
|
||||||
nzFooter: null,
|
nzFooter: null,
|
||||||
nzComponentParams: { object: params, shipperName: this.shipperName , type:'bulk'}
|
nzComponentParams: { object: params, shipperName: this.shipperName, type: 'bulk' }
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe(result => {
|
modalRef.afterClose.subscribe(result => {
|
||||||
if (result) {
|
if (result) {
|
||||||
@ -1001,13 +1011,13 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
if (this.PageStatus === '大宗修改') {
|
if (this.PageStatus === '大宗修改') {
|
||||||
this.sf4data.id = res?.goodsInfoVOList[0]?.id;
|
this.sf4data.id = res?.goodsInfoVOList[0]?.id;
|
||||||
}
|
}
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo[0]?.detailedAddress && this.endInfo[0]?.detailedAddress) {
|
if (this.startInfo[0]?.detailedAddress && this.endInfo[0]?.detailedAddress) {
|
||||||
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
||||||
this.totalDistance = res.distance;
|
this.totalDistance = res.distance;
|
||||||
this.totalTime = res.time;
|
this.totalTime = res.time;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
this.totalFees = res?.freightPrice || '0';
|
this.totalFees = res?.freightPrice || '0';
|
||||||
this.sf7data = {
|
this.sf7data = {
|
||||||
stateReceipt: res?.stateReceipt,
|
stateReceipt: res?.stateReceipt,
|
||||||
@ -1080,13 +1090,13 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
element.type = '2';
|
element.type = '2';
|
||||||
});
|
});
|
||||||
|
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo[0]?.detailedAddress && this.endInfo[0]?.detailedAddress) {
|
if (this.startInfo[0]?.detailedAddress && this.endInfo[0]?.detailedAddress) {
|
||||||
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
||||||
this.totalDistance = res.distance;
|
this.totalDistance = res.distance;
|
||||||
this.totalTime = res.time;
|
this.totalTime = res.time;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
getLimitvalue() {
|
getLimitvalue() {
|
||||||
const getlimitvaluesParms = [
|
const getlimitvaluesParms = [
|
||||||
|
|||||||
@ -134,20 +134,12 @@
|
|||||||
<sf #sf4 [schema]="schema4" [button]="'none'" [ui]="ui4" [formData]="sf4data">
|
<sf #sf4 [schema]="schema4" [button]="'none'" [ui]="ui4" [formData]="sf4data">
|
||||||
<ng-template sf-template="freightPrice" let-i let-ui="ui">
|
<ng-template sf-template="freightPrice" let-i let-ui="ui">
|
||||||
<nz-input-group [nzAddOnAfter]="addOnAfterTemplate">
|
<nz-input-group [nzAddOnAfter]="addOnAfterTemplate">
|
||||||
<input
|
<nz-input-number [nzMax]="99999" [nzMin] ="0" nzPlaceHolder="请输入" type="number" [ngModel]="i.value"
|
||||||
nz-input
|
(ngModelChange)="i.setValue($event)" [nzPrecision]="2" style="width: 100%;"></nz-input-number>
|
||||||
type="number"
|
|
||||||
min="0"
|
|
||||||
step="0.01"
|
|
||||||
[ngModel]="i.value"
|
|
||||||
(ngModelChange)="i.setValue($event)"
|
|
||||||
placeholder="请输入"
|
|
||||||
oninput="if(value>99999)value=99999;if(value<1)value=1"
|
|
||||||
/>
|
|
||||||
</nz-input-group>
|
</nz-input-group>
|
||||||
<ng-template #addOnAfterTemplate>
|
<ng-template #addOnAfterTemplate>
|
||||||
<nz-select [ngModel]="sf4.value.freightType" (ngModelChange)="sf4.setValue('/freightType', $event)">
|
<nz-select [ngModel]="sf4.value.freightType" (ngModelChange)="sf4.setValue('/freightType', $event)">
|
||||||
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of freightTypeOptions"></nz-option>
|
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of freightTypeOptions"> </nz-option>
|
||||||
</nz-select>
|
</nz-select>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -39,6 +39,7 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
creatTime: any; // 货源单设置回显
|
creatTime: any; // 货源单设置回显
|
||||||
modifyTime: any; // 货源单设置回显
|
modifyTime: any; // 货源单设置回显
|
||||||
totalFees: any; // 总数信息
|
totalFees: any; // 总数信息
|
||||||
|
ruleOptions: any;
|
||||||
id = '';
|
id = '';
|
||||||
type = 'add';
|
type = 'add';
|
||||||
limitValues = {
|
limitValues = {
|
||||||
@ -89,6 +90,7 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
this.initSF4();
|
this.initSF4();
|
||||||
this.initSF6();
|
this.initSF6();
|
||||||
this.getLimitvalue();
|
this.getLimitvalue();
|
||||||
|
this.initDict();
|
||||||
this.startInfo = [
|
this.startInfo = [
|
||||||
{
|
{
|
||||||
detailedAddress: '',
|
detailedAddress: '',
|
||||||
@ -538,6 +540,14 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
initDict() {
|
||||||
|
this.service.getDictByKey('freight:type').subscribe(res => {
|
||||||
|
this.freightTypeOptions = res;
|
||||||
|
});
|
||||||
|
this.service.getDictByKey('goodresource:rounding:rules').subscribe(res => {
|
||||||
|
this.ruleOptions = res;
|
||||||
|
});
|
||||||
|
}
|
||||||
//指派熟车
|
//指派熟车
|
||||||
chooseFamifiar(item: any) {
|
chooseFamifiar(item: any) {
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
|
|||||||
@ -73,7 +73,7 @@
|
|||||||
[req]="{ process: beforeReq }"
|
[req]="{ process: beforeReq }"
|
||||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
|
[res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
|
||||||
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
||||||
[loading]="loading"
|
[loading]="false"
|
||||||
>
|
>
|
||||||
<ng-template st-row="createUserName" let-item let-index="index">
|
<ng-template st-row="createUserName" let-item let-index="index">
|
||||||
<div> {{ item?.createUserName }}/{{ item?.createUserPhone }} </div>
|
<div> {{ item?.createUserName }}/{{ item?.createUserPhone }} </div>
|
||||||
|
|||||||
@ -98,7 +98,7 @@ export class SupplyManagementBulkComponent implements OnInit {
|
|||||||
return requestOptions;
|
return requestOptions;
|
||||||
};
|
};
|
||||||
search() {
|
search() {
|
||||||
this.st?.load(1);
|
this.st?.load();
|
||||||
this.getGoodsSourceStatistical()
|
this.getGoodsSourceStatistical()
|
||||||
}
|
}
|
||||||
afterRes = (data: any[], rawData?: any) => {
|
afterRes = (data: any[], rawData?: any) => {
|
||||||
@ -323,7 +323,7 @@ export class SupplyManagementBulkComponent implements OnInit {
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
width: '110px',
|
width: '110px',
|
||||||
className: 'text-center',
|
className: 'text-center block-td',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '货源审核',
|
text: '货源审核',
|
||||||
@ -332,7 +332,7 @@ export class SupplyManagementBulkComponent implements OnInit {
|
|||||||
acl: { ability: ['SUPPLY-INDEX-bulkBatchAudit'] },
|
acl: { ability: ['SUPPLY-INDEX-bulkBatchAudit'] },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '二维码 ',
|
text: '二维码',
|
||||||
click: (_record) => this.assignedQrcode(_record),
|
click: (_record) => this.assignedQrcode(_record),
|
||||||
iif: item => item.resourceStatus == 1,
|
iif: item => item.resourceStatus == 1,
|
||||||
},
|
},
|
||||||
|
|||||||
@ -991,9 +991,9 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
];
|
];
|
||||||
// 运费信息
|
// 运费信息
|
||||||
const expenseList = [
|
const expenseList = [
|
||||||
{ expenseCode: 'PRE', expenseName: '预付', price: this.sf7.value.prePay || 0, id: this.sf7data?.prePayId || '' },
|
{ expenseCode: 'PRE', expenseName: '预付', price: this.sf7.value.prePay || 0, id: this.sf7data?.prePayId || '' ,resourceId: this.sf7data?.PREresourceId || '' },
|
||||||
{ expenseCode: 'RECE', expenseName: '到付', price: this.sf7.value.toPay || 0, id: this.sf7data?.toPayId || '' },
|
{ expenseCode: 'RECE', expenseName: '到付', price: this.sf7.value.toPay || 0, id: this.sf7data?.toPayId || '' ,resourceId: this.sf7data?.RECEresourceId || ''},
|
||||||
{ expenseCode: 'BACK', expenseName: '回单付', price: this.sf7.value.receiptPay || 0, id: this.sf7data?.receiptPayId || '' }
|
{ expenseCode: 'BACK', expenseName: '回单付', price: this.sf7.value.receiptPay || 0, id: this.sf7data?.receiptPayId || '' ,resourceId: this.sf7data?.BACKresourceId || ''}
|
||||||
];
|
];
|
||||||
// 从“再下一单”过来,将所有的子参数内的id都删除
|
// 从“再下一单”过来,将所有的子参数内的id都删除
|
||||||
if (this.PageStatus === '整车下一单') {
|
if (this.PageStatus === '整车下一单') {
|
||||||
@ -1288,14 +1288,28 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
receiptAddress: res?.supplementaryInformationVO.address || '',
|
receiptAddress: res?.supplementaryInformationVO.address || '',
|
||||||
remarks: res?.supplementaryInformationVO?.remarks || ''
|
remarks: res?.supplementaryInformationVO?.remarks || ''
|
||||||
};
|
};
|
||||||
|
// this.sf7data = {
|
||||||
|
// prePay: res?.shippingInformationVO?.prePay,
|
||||||
|
// toPay: res?.shippingInformationVO?.toPay,
|
||||||
|
// // oilCardPay: 0,
|
||||||
|
// receiptPay: res?.shippingInformationVO?.receiptPay,
|
||||||
|
// total: res?.shippingInformationVO?.totalFee,
|
||||||
|
// appendFee: res?.shippingInformationVO?.appendFee,
|
||||||
|
// paymentDays: res?.paymentDays
|
||||||
|
// };
|
||||||
this.sf7data = {
|
this.sf7data = {
|
||||||
prePay: res?.shippingInformationVO?.prePay,
|
prePay: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'PRE')[0]?.price || null,
|
||||||
toPay: res?.shippingInformationVO?.toPay,
|
toPay: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'RECE')[0]?.price || null,
|
||||||
// oilCardPay: 0,
|
receiptPay: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'BACK')[0]?.price || null,
|
||||||
receiptPay: res?.shippingInformationVO?.receiptPay,
|
appendFee: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'ATT')[0]?.price || 0,
|
||||||
total: res?.shippingInformationVO?.totalFee,
|
paymentDays: res?.paymentDays || '',
|
||||||
appendFee: res?.shippingInformationVO?.appendFee,
|
prePayId: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'PRE')[0]?.id || '',
|
||||||
paymentDays: res?.paymentDays
|
PREresourceId: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'PRE')[0]?.resourceId || '',
|
||||||
|
RECEresourceId: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'RECE')[0]?.resourceId || '',
|
||||||
|
BACKresourceId: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'BACK')[0]?.resourceId || '',
|
||||||
|
toPayId: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'RECE')[0]?.id || '',
|
||||||
|
receiptPayId: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'BACK')[0]?.id || '',
|
||||||
|
appendFeeId: res?.expenseVOList?.filter((data: any) => data.expenseCode === 'ATT')[0]?.id || ''
|
||||||
};
|
};
|
||||||
this.sf7.setValue('/prePay', this.sf7data.prePay);
|
this.sf7.setValue('/prePay', this.sf7data.prePay);
|
||||||
this.sf7.setValue('/toPay', this.sf7data.toPay);
|
this.sf7.setValue('/toPay', this.sf7data.toPay);
|
||||||
|
|||||||
@ -162,7 +162,7 @@
|
|||||||
<sv label="货物价值">
|
<sv label="货物价值">
|
||||||
{{i?.goodsValue !==null?(i?.goodsValue|currency)+'元':'-'}}
|
{{i?.goodsValue !==null?(i?.goodsValue|currency)+'元':'-'}}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="保价费金额">
|
<sv label="服务包费用">
|
||||||
{{i?.insurancePremium!==null?(i?.insurancePremium |currency)+'元':'-'}}
|
{{i?.insurancePremium!==null?(i?.insurancePremium |currency)+'元':'-'}}
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
|
|||||||
@ -179,11 +179,12 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
label: '下载失败数据',
|
label: '下载失败数据',
|
||||||
type: 'primary',
|
type: 'primary',
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
this.service.request(this.service.$api_getFailUploadGoodsOperateResource, result.ids).subscribe((res: any) => {
|
this.service.downloadFile(this.service.$api_getFailUploadGoodsOperateResource, result.ids);
|
||||||
if (res) {
|
// this.service.request(this.service.$api_getFailUploadGoodsOperateResource, result.ids).subscribe((res: any) => {
|
||||||
console.log(res);
|
// if (res) {
|
||||||
}
|
// console.log(res);
|
||||||
});
|
// }
|
||||||
|
// });
|
||||||
console.log(111);
|
console.log(111);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -595,7 +596,7 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
width: '110px',
|
width: '110px',
|
||||||
className: 'text-center',
|
className: 'text-center block-td',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '货源审核',
|
text: '货源审核',
|
||||||
@ -626,7 +627,7 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
acl: { ability: ['SUPPLY-INDEX-vehiclePlaceOrder'] }
|
acl: { ability: ['SUPPLY-INDEX-vehiclePlaceOrder'] }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '重新指派 ',
|
text: '重新指派',
|
||||||
click: _record => this.assignedCar(_record),
|
click: _record => this.assignedCar(_record),
|
||||||
iif: item => item.resourceStatus === '1' && item.serviceType === '2',
|
iif: item => item.resourceStatus === '1' && item.serviceType === '2',
|
||||||
acl: { ability: ['SUPPLY-INDEX-vehicleReassign'] }
|
acl: { ability: ['SUPPLY-INDEX-vehicleReassign'] }
|
||||||
|
|||||||
@ -154,13 +154,20 @@ export class SupplyManagementImportSupplyComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
save(): void {
|
save(): void {
|
||||||
|
console.log(this?.networkTransporter)
|
||||||
|
console.log(this.sf.value)
|
||||||
|
if(!this.sf.value?.shipperAppUserId || !this?.networkTransporter || !this.sf.value?.enterpriseProjectId || !this.sf.value?.fileName) {
|
||||||
|
this.service.msgSrv.error('请填写必填项并上传文件!')
|
||||||
|
return
|
||||||
|
}
|
||||||
const formData : any= new FormData();
|
const formData : any= new FormData();
|
||||||
this.files.forEach((file: any) => {
|
this.files?.forEach((file: any) => {
|
||||||
formData.append('file', file);
|
formData.append('file', file);
|
||||||
formData.append('shipperAppUserId', this.sf.value?.shipperAppUserId);
|
formData.append('shipperAppUserId', this.sf.value?.shipperAppUserId);
|
||||||
formData.append('enterpriseInfoId', this?.networkTransporter);
|
formData.append('enterpriseInfoId', this?.networkTransporter);
|
||||||
formData.append('enterpriseProjectId', this.sf.value?.enterpriseProjectId);
|
formData.append('enterpriseProjectId', this.sf.value?.enterpriseProjectId);
|
||||||
});
|
});
|
||||||
|
|
||||||
console.log(formData)
|
console.log(formData)
|
||||||
this.service.request(this.service.$api_goodsResourceOperateImport, formData).subscribe(res => {
|
this.service.request(this.service.$api_goodsResourceOperateImport, formData).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
|
|||||||
@ -175,4 +175,9 @@ export class SupplyManagementService extends BaseService {
|
|||||||
$api_asyncExportWholeList = '/api/sdc/goodsResourceOperate/asyncExportWholeList';
|
$api_asyncExportWholeList = '/api/sdc/goodsResourceOperate/asyncExportWholeList';
|
||||||
// 根据货主ID查询合同签署属性
|
// 根据货主ID查询合同签署属性
|
||||||
public $api_getContractAtr = '/api/mdc/cuc/enterpriseInfo/cargoOwner/getContractAtr';
|
public $api_getContractAtr = '/api/mdc/cuc/enterpriseInfo/cargoOwner/getContractAtr';
|
||||||
|
|
||||||
|
getDictByKey(dictKey: string) {
|
||||||
|
const params = { dictKey: dictKey };
|
||||||
|
return this.request(this.$api_getDictValue, params);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,7 +29,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<st #st [data]="service.$api_get_crmCustomer_page" [columns]="columns" [req]="{ params: reqParams }"
|
<st #st [data]="service.$api_get_crmCustomer_page" [columns]="columns" [req]="{ params: reqParams }"
|
||||||
[loading]="false" [scroll]="{ y: '370px' }" (change)="stChange($event)">
|
[loading]="false" [scroll]="{ y: '370px' }" (change)="stChange($event)" [page]="{}" >
|
||||||
<ng-template st-row="customerType" let-item let-index="index">
|
<ng-template st-row="customerType" let-item let-index="index">
|
||||||
<div>
|
<div>
|
||||||
<span *ngIf="item?.customerType == 1">客户</span>
|
<span *ngIf="item?.customerType == 1">客户</span>
|
||||||
|
|||||||
@ -1,12 +1,13 @@
|
|||||||
import { query } from '@angular/animations';
|
import { query } from '@angular/animations';
|
||||||
import { CurrencyPipe } from '@angular/common';
|
import { CurrencyPipe } from '@angular/common';
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, ViewChild } from '@angular/core';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { isTemplateRef } from 'ng-zorro-antd/core/util';
|
import { isTemplateRef } from 'ng-zorro-antd/core/util';
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
|
|
||||||
import { TicketService } from '../../services/ticket.service';
|
import { TicketService } from '../../services/ticket.service';
|
||||||
import { PrintOrderModalComponent } from './print-order-modal/print-order-modal.component';
|
import { PrintOrderModalComponent } from './print-order-modal/print-order-modal.component';
|
||||||
import { RequestedInvoiceModalComponent } from './requested-invoice-modal/requested-invoice-modal.component';
|
import { RequestedInvoiceModalComponent } from './requested-invoice-modal/requested-invoice-modal.component';
|
||||||
@ -16,7 +17,7 @@ import { RequestedInvoiceModalComponent } from './requested-invoice-modal/reques
|
|||||||
templateUrl: './invoice-requested.component.html',
|
templateUrl: './invoice-requested.component.html',
|
||||||
styleUrls: ['./invoice-requested.component.less', '../../../commom/less/box.less']
|
styleUrls: ['./invoice-requested.component.less', '../../../commom/less/box.less']
|
||||||
})
|
})
|
||||||
export class InvoiceRequestedComponent implements OnInit {
|
export class InvoiceRequestedComponent {
|
||||||
@ViewChild('st', { static: true })
|
@ViewChild('st', { static: true })
|
||||||
st!: STComponent;
|
st!: STComponent;
|
||||||
@ViewChild('sf', { static: false })
|
@ViewChild('sf', { static: false })
|
||||||
@ -33,8 +34,6 @@ export class InvoiceRequestedComponent implements OnInit {
|
|||||||
selectedRows: any[] = [];
|
selectedRows: any[] = [];
|
||||||
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
|
constructor(public service: TicketService, private nzModalService: NzModalService, private router: Router) {}
|
||||||
|
|
||||||
ngOnInit(): void {}
|
|
||||||
|
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
if (this.resourceStatus) {
|
if (this.resourceStatus) {
|
||||||
Object.assign(requestOptions.body, { sts: this.resourceStatus });
|
Object.assign(requestOptions.body, { sts: this.resourceStatus });
|
||||||
@ -219,6 +218,11 @@ export class InvoiceRequestedComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
nzFooter: null
|
nzFooter: null
|
||||||
});
|
});
|
||||||
|
modal.afterClose.subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.st.load(1);
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -296,6 +300,14 @@ export class InvoiceRequestedComponent implements OnInit {
|
|||||||
otherremarks: {
|
otherremarks: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '其他需求',
|
title: '其他需求',
|
||||||
|
<<<<<<< HEAD
|
||||||
|
=======
|
||||||
|
enum: [
|
||||||
|
{ label: '全部', value: '' },
|
||||||
|
{ label: '是', value: true },
|
||||||
|
{ label: '否', value: false }
|
||||||
|
],
|
||||||
|
>>>>>>> ace758617fd29baf5826fe50da26dfa1b86ae71e
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
expand: (value: boolean) => value
|
expand: (value: boolean) => value
|
||||||
@ -427,7 +439,7 @@ export class InvoiceRequestedComponent implements OnInit {
|
|||||||
// },
|
// },
|
||||||
{
|
{
|
||||||
text: '订单明细<br/>',
|
text: '订单明细<br/>',
|
||||||
click: item => this.router.navigate(['/ticket/invoice-requested/detail/' + item?.id], { queryParams: { sts: item.sts } })
|
click: item => this.router.navigate([`/ticket/invoice-requested/detail/${item?.id}`], { queryParams: { sts: item.sts } })
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看原因<br/>',
|
text: '查看原因<br/>',
|
||||||
|
|||||||
@ -12,7 +12,7 @@
|
|||||||
<app-requested-detail [id]="id"></app-requested-detail>
|
<app-requested-detail [id]="id"></app-requested-detail>
|
||||||
|
|
||||||
<st
|
<st
|
||||||
#st
|
#st1
|
||||||
[data]="service.$api_get_invoice_requested_order_detail"
|
[data]="service.$api_get_invoice_requested_order_detail"
|
||||||
[columns]="columns"
|
[columns]="columns"
|
||||||
bordered
|
bordered
|
||||||
|
|||||||
@ -6,9 +6,10 @@
|
|||||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\invoice-requested\\requested-invoice-modal\\requested-invoice-modal.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\invoice-requested\\requested-invoice-modal\\requested-invoice-modal.component.ts
|
||||||
*/
|
*/
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, ViewChild } from '@angular/core';
|
||||||
import { STChange, STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
|
import { STChange, STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
||||||
|
|
||||||
import { TicketService } from '../../../services/ticket.service';
|
import { TicketService } from '../../../services/ticket.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -16,16 +17,14 @@ import { TicketService } from '../../../services/ticket.service';
|
|||||||
templateUrl: './requested-invoice-modal.component.html',
|
templateUrl: './requested-invoice-modal.component.html',
|
||||||
styleUrls: ['./requested-invoice-modal.component.less']
|
styleUrls: ['./requested-invoice-modal.component.less']
|
||||||
})
|
})
|
||||||
export class RequestedInvoiceModalComponent implements OnInit {
|
export class RequestedInvoiceModalComponent {
|
||||||
@ViewChild('st', { static: false })
|
@ViewChild('st1', { static: false })
|
||||||
st!: STComponent;
|
st1!: STComponent;
|
||||||
columns: STColumn[] = this.initST();
|
columns: STColumn[] = this.initST();
|
||||||
id: any;
|
id: any;
|
||||||
selectedRows: any[] = [];
|
selectedRows: any[] = [];
|
||||||
constructor(public service: TicketService, private nzModalService: NzModalService, private modal: NzModalRef) {}
|
constructor(public service: TicketService, private nzModalService: NzModalService, private modal: NzModalRef) {}
|
||||||
|
|
||||||
ngOnInit(): void {}
|
|
||||||
|
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
Object.assign(requestOptions.body, { vatappHId: this.id });
|
Object.assign(requestOptions.body, { vatappHId: this.id });
|
||||||
return requestOptions;
|
return requestOptions;
|
||||||
@ -33,6 +32,7 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 移除订单
|
* 移除订单
|
||||||
|
*
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
removeOrder(item: any[]) {
|
removeOrder(item: any[]) {
|
||||||
@ -45,7 +45,7 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
this.service.request(this.service.$api_remove_bill, ids).subscribe(res => {
|
this.service.request(this.service.$api_remove_bill, ids).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('移除成功');
|
this.service.msgSrv.success('移除成功');
|
||||||
this.modal.destroy();
|
this.modal.destroy(true);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -57,7 +57,7 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
this.selectedRows = e.checkbox!;
|
this.selectedRows = e.checkbox!;
|
||||||
break;
|
break;
|
||||||
case 'filter':
|
case 'filter':
|
||||||
this.st.load();
|
this.st1.load();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -78,7 +78,7 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
width: 90,
|
width: 90,
|
||||||
type: 'widget',
|
type: 'widget',
|
||||||
className: 'text-right',
|
className: 'text-right',
|
||||||
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.billkpmoney }) }
|
widget: { type: 'currency-chy', params: ({ record }: any) => ({ value: record.billkpmoney }) }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '运输费',
|
title: '运输费',
|
||||||
@ -86,7 +86,7 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
width: 90,
|
width: 90,
|
||||||
type: 'widget',
|
type: 'widget',
|
||||||
className: 'text-right',
|
className: 'text-right',
|
||||||
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.fjfmoney2 }) }
|
widget: { type: 'currency-chy', params: ({ record }: any) => ({ value: record.fjfmoney2 }) }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '附加费',
|
title: '附加费',
|
||||||
@ -94,7 +94,7 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
width: 90,
|
width: 90,
|
||||||
type: 'widget',
|
type: 'widget',
|
||||||
className: 'text-right',
|
className: 'text-right',
|
||||||
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.fjfmoney }) }
|
widget: { type: 'currency-chy', params: ({ record }: any) => ({ value: record.fjfmoney }) }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '操作',
|
title: '操作',
|
||||||
@ -104,7 +104,7 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '移除',
|
text: '移除',
|
||||||
click: item => this.removeOrder([item])
|
click: (item: any) => this.removeOrder([item])
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@ -116,17 +116,19 @@ export class RequestedInvoiceModalComponent implements OnInit {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const selectedRows = this.selectedRows.map(item => {
|
const selectedRows = this.selectedRows.map(item => {
|
||||||
delete item._values;
|
return { ...item };
|
||||||
return item;
|
|
||||||
});
|
});
|
||||||
const params = {
|
const params = {
|
||||||
ficoVatappBillVOList: selectedRows,
|
ficoVatappBillVOList: selectedRows.map(item => {
|
||||||
|
delete item._values;
|
||||||
|
return item;
|
||||||
|
}),
|
||||||
id: this.id
|
id: this.id
|
||||||
};
|
};
|
||||||
this.service.request(this.service.$api_get_applyFicoVatinv, params).subscribe((res: any) => {
|
this.service.request(this.service.$api_get_applyFicoVatinv, params).subscribe((res: any) => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('开票成功');
|
this.service.msgSrv.success('开票成功');
|
||||||
this.modal.destroy();
|
this.modal.destroy(true);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@ -377,12 +377,11 @@ export class FreightComponentsListComponent implements OnInit {
|
|||||||
{
|
{
|
||||||
title: '操作',
|
title: '操作',
|
||||||
width: '110px',
|
width: '110px',
|
||||||
className: 'text-center',
|
className: 'text-center block-td',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
buttons: [
|
buttons: [
|
||||||
{ type: 'divider' },
|
|
||||||
{
|
{
|
||||||
text: '查看 <br>',
|
text: '查看',
|
||||||
acl: { ability: ['USERCENTER-FREIGHT-LIST-view'] },
|
acl: { ability: ['USERCENTER-FREIGHT-LIST-view'] },
|
||||||
click: item => {
|
click: item => {
|
||||||
this.router.navigate(['./detail', item.id], { relativeTo: this.ar });
|
this.router.navigate(['./detail', item.id], { relativeTo: this.ar });
|
||||||
|
|||||||
@ -19,8 +19,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div nz-row style="display: flex; justify-content: end;" class="mb-xs">
|
<div nz-row style="display: flex; justify-content: end;" class="mb-xs">
|
||||||
<div nz-col>
|
<div nz-col>
|
||||||
<button nz-button *ngIf="i.wayBillStatus == '2'" (click)="sureDepart(i)" acl [acl-ability]="['WAYBILL-BULK-DETAIL-insertBulkStartCarInfo']">确认发车</button>
|
<button nz-button *ngIf="i?.wayBillStatus == '2'" (click)="sureDepart(i)" acl [acl-ability]="['WAYBILL-BULK-DETAIL-insertBulkStartCarInfo']">确认发车</button>
|
||||||
<button nz-button nzType="primary" *ngIf="i.wayBillStatus == '3'" (click)="sureArrive(i)" nzGhost acl [acl-ability]="['WAYBILL-BULK-DETAIL-insertBulkUnloadCarInfo']" >确认到车</button>
|
<button nz-button nzType="primary" *ngIf="i?.wayBillStatus == '3'" (click)="sureArrive(i)" nzGhost acl [acl-ability]="['WAYBILL-BULK-DETAIL-insertBulkUnloadCarInfo']" >确认到车</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
@ -29,10 +29,10 @@
|
|||||||
<sv label="货主">{{ i?.shippername }} </sv>
|
<sv label="货主">{{ i?.shippername }} </sv>
|
||||||
<sv label="所属项目">{{i?.enterpriseProject}}</sv>
|
<sv label="所属项目">{{i?.enterpriseProject}}</sv>
|
||||||
<sv label="服务类型">{{i?.serviceTypeLabel}}</sv>
|
<sv label="服务类型">{{i?.serviceTypeLabel}}</sv>
|
||||||
<sv label="调度员">{{i?.dispatch?.name}} /{{i?.dispatch?.phone}}</sv>
|
<sv label="调度员">{{i?.dispatchName}} /{{i?.dispatchPhone}}</sv>
|
||||||
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
||||||
<sv label="货源编号">{{ i?.resourceCode }} </sv>
|
<sv label="货源编号">{{ i?.resourceCode }} </sv>
|
||||||
<sv label="运单号">{{ i?.wayBillCode }}</sv>
|
<sv label="运单号">{{ i?.wayBill?.wayBillCode }}</sv>
|
||||||
<sv label="承诺付款天数">{{ i?.paymentDays }}</sv>
|
<sv label="承诺付款天数">{{ i?.paymentDays }}</sv>
|
||||||
</div>
|
</div>
|
||||||
<nz-tabset style="margin-top: 15px;">
|
<nz-tabset style="margin-top: 15px;">
|
||||||
@ -92,13 +92,13 @@
|
|||||||
{{i?.unloadPlanTime}}
|
{{i?.unloadPlanTime}}
|
||||||
</sv> -->
|
</sv> -->
|
||||||
<sv label="接单数量">
|
<sv label="接单数量">
|
||||||
{{i?.acceptWeight}}吨,{{i?.acceptVolume}}方,{{i?.acceptNumber}}件
|
{{ i?.acceptWeight }}吨,{{ i?.acceptVolume }}方
|
||||||
</sv>
|
</sv>
|
||||||
<sv *ngIf="i?.billStatus =='3' || i?.billStatus =='4' || i?.billStatus =='5'" label="装货数量">
|
<sv *ngIf="i?.billStatus =='3' || i?.billStatus =='4' || i?.billStatus =='5'" label="装货数量">
|
||||||
{{i?.acceptWeight}}吨,{{i?.acceptVolume}}方,{{i?.acceptNumber}}件
|
{{ i?.loadWeight }}吨,{{ i?.loadVolume }}方
|
||||||
</sv>
|
</sv>
|
||||||
<sv *ngIf="i?.billStatus =='4' || i?.billStatus =='5'" label="卸货数量">
|
<sv *ngIf="i?.billStatus =='4' || i?.billStatus =='5'" label="卸货数量">
|
||||||
{{i?.settlementWeight}}吨,{{i?.settlementVolume}}方,{{i?.acceptNumber}}件
|
{{ i?.settlementWeight }}吨,{{ i?.settlementVolume }}方
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<div class="mt-md">
|
<div class="mt-md">
|
||||||
@ -182,7 +182,7 @@
|
|||||||
<sv label="协议附件">
|
<sv label="协议附件">
|
||||||
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
||||||
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
||||||
<a href="javascript:;" (click)="agreement('2')">补充协议</a>
|
<a target="_blank" [routerLink]="['/agreement']" [queryParams]="{ type: 8 }">补充协议</a>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2" class="mt-md">
|
<sv-container col="2" class="mt-md">
|
||||||
@ -224,13 +224,12 @@
|
|||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<nz-card>
|
<nz-card>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<st [scroll]="{y: '500px'}" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st [scroll]="{y: '500px'}" style="min-height: 600px;" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
@ -249,6 +248,7 @@
|
|||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
|
<div *ngIf="!imges">暂无附件信息</div>
|
||||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooter>
|
<ng-template #nzModalFooter>
|
||||||
|
|||||||
@ -72,7 +72,7 @@ export class WaybillManagementBulkeDetailComponent implements OnInit {
|
|||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initData()
|
this.initData()
|
||||||
this.getDriverTrajectory()
|
this.getTrajectory()
|
||||||
}
|
}
|
||||||
initData() {
|
initData() {
|
||||||
const params = {
|
const params = {
|
||||||
@ -84,7 +84,7 @@ export class WaybillManagementBulkeDetailComponent implements OnInit {
|
|||||||
this.unLoadingPlaceVOList.push(...res.dischargePlace)
|
this.unLoadingPlaceVOList.push(...res.dischargePlace)
|
||||||
console.log(this.unLoadingPlaceVOList)
|
console.log(this.unLoadingPlaceVOList)
|
||||||
this.i = res;
|
this.i = res;
|
||||||
this.billExpenses = this.i?.billExpenseDetailVOList?.filter((data: any) => data.costCode === 'TRA');
|
this.billExpenses = this.i?.billExpenseDetails?.filter((data: any) => data.costCode === 'TRA');
|
||||||
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data:any)=>data.displayStatus !=="HIDE");
|
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data:any)=>data.displayStatus !=="HIDE");
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -102,17 +102,7 @@ export class WaybillManagementBulkeDetailComponent implements OnInit {
|
|||||||
window.history.go(-1);
|
window.history.go(-1);
|
||||||
}
|
}
|
||||||
agreement(value: any) {
|
agreement(value: any) {
|
||||||
console.log('123')
|
this.imges = this.i?.agreementFilePath
|
||||||
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;
|
this.isVisible = true;
|
||||||
}
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
|
|||||||
@ -86,9 +86,9 @@
|
|||||||
<div>{{item?.settlementBasisLabel}}</div>
|
<div>{{item?.settlementBasisLabel}}</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="billExpenseDetailVOList" let-item let-index="index">
|
<ng-template st-row="billExpenseDetailVOList" let-item let-index="index">
|
||||||
<div *ngIf="item?.billExpenseDetailVOList.length > 0">
|
<div *ngIf="item?.billExpenseDetailVOList?.length > 0">
|
||||||
<p *ngFor="let data of item?.billExpenseDetailVOList">
|
<p *ngFor="let data of item?.billExpenseDetailVOList">
|
||||||
{{ data.costCodeLabel }}:{{ data.price | currency }}
|
{{ data.costName }}:{{ data.price | currency }}
|
||||||
<span style="color: #f59a63">{{ data.paymentStatusLabel }}</span>
|
<span style="color: #f59a63">{{ data.paymentStatusLabel }}</span>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -283,8 +283,7 @@ tabs = {
|
|||||||
width: '200px',
|
width: '200px',
|
||||||
className: 'text-left',
|
className: 'text-left',
|
||||||
format: (item: any) =>
|
format: (item: any) =>
|
||||||
`${item.settlementWeight || '0'}吨/
|
`${item.settlementWeight || ''}`
|
||||||
${item.settlementVolume || '0'}方`
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '承运司机',
|
title: '承运司机',
|
||||||
|
|||||||
@ -29,10 +29,10 @@
|
|||||||
<sv label="货主">{{ i?.shippername }} </sv>
|
<sv label="货主">{{ i?.shippername }} </sv>
|
||||||
<sv label="所属项目">{{i?.enterpriseProject}}</sv>
|
<sv label="所属项目">{{i?.enterpriseProject}}</sv>
|
||||||
<sv label="服务类型">{{i?.serviceTypeLabel}}</sv>
|
<sv label="服务类型">{{i?.serviceTypeLabel}}</sv>
|
||||||
<sv label="调度员">{{i?.dispatch?.name}} /{{i?.dispatch?.phone}}</sv>
|
<sv label="调度员">{{i?.dispatchName}} /{{i?.dispatchPhone}}</sv>
|
||||||
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
<sv label="外部订单号">{{ i?.externalBillCode }}</sv>
|
||||||
<sv label="货源编号">{{ i?.resourceCode }} </sv>
|
<sv label="货源编号">{{ i?.resourceCode }} </sv>
|
||||||
<sv label="运单号">{{ i?.wayBillCode }}</sv>
|
<sv label="运单号">{{ i?.wayBill?.wayBillCode }}</sv>
|
||||||
<sv label="承诺付款天数">{{ i?.paymentDays }}</sv>
|
<sv label="承诺付款天数">{{ i?.paymentDays }}</sv>
|
||||||
</div>
|
</div>
|
||||||
<nz-tabset style="margin-top: 15px;">
|
<nz-tabset style="margin-top: 15px;">
|
||||||
@ -133,13 +133,13 @@
|
|||||||
<nz-card nzTitle="服务信息">
|
<nz-card nzTitle="服务信息">
|
||||||
<sv-container>
|
<sv-container>
|
||||||
<sv label="服务包">
|
<sv label="服务包">
|
||||||
{{i?.goodsResource?.insuranceTypeLabel}}
|
{{i?.insuranceTypeLabel}}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="货物价值">
|
<sv label="货物价值">
|
||||||
{{i?.goodsResource?.goodsValue !==null?(i?.goodsResource?.goodsValue|currency)+'元':'-'}}
|
{{i?.goodsValue !==null?(i?.goodsValue|currency)+'元':'-'}}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="保价费金额">
|
<sv label="服务包费用">
|
||||||
{{i?.goodsResource?.insurancePremium!==null?(i?.goodsResource?.insurancePremium |currency)+'元':'-'}}
|
{{i?.insurancePremium!==null?(i?.insurancePremium |currency)+'元':'-'}}
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
@ -164,7 +164,7 @@
|
|||||||
<sv label="协议附件">
|
<sv label="协议附件">
|
||||||
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
<!-- {{i?.supplementaryInformationVO?.stateReceipt?'是':'否'}} -->
|
||||||
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
<a href="javascript:;" (click)="agreement('1')">查看附件</a>
|
||||||
<a href="javascript:;" (click)="agreement('2')">补充协议</a>
|
<a target="_blank" [routerLink]="['/agreement']" [queryParams]="{ type: 8 }">补充协议</a>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2" class="mt-md">
|
<sv-container col="2" class="mt-md">
|
||||||
@ -181,28 +181,25 @@
|
|||||||
<nz-card nzTitle="补充信息">
|
<nz-card nzTitle="补充信息">
|
||||||
<sv-container>
|
<sv-container>
|
||||||
<sv label="是否回单">
|
<sv label="是否回单">
|
||||||
{{i?.receiptType == 1 ?'是':'否'}}
|
{{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="回单类型" *ngIf="i?.receiptType == 1">
|
<sv label="回单类型" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
|
||||||
{{i?.receiptTypeLabel}}
|
{{ i?.supplementaryInformationVO?.receiptType === '1' ? '电子回单' : '纸质回单' }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="联系人" *ngIf="i?.receiptType == 1">
|
<sv label="联系人" *ngIf="i?.supplementaryInformationVO?.stateReceipt"> {{ i?.supplementaryInformationVO?.receiptUserName }} / {{ i?.supplementaryInformationVO?.phon }} </sv>
|
||||||
{{i?.receiptUser}}{{ i?.receiptUserPhone ? ' /' + i?.receiptUserPhone : ''}}
|
<sv label="所在地区" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
|
||||||
|
{{ i?.supplementaryInformationVO?.area }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="所在地区" *ngIf="i?.receiptType == 1">
|
<sv label="详细地址" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
|
||||||
{{i?.receiptPlace}}
|
{{ i?.supplementaryInformationVO?.address }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="详细地址" *ngIf="i?.receiptType == 1">
|
|
||||||
{{i?.receiptAddress}}
|
|
||||||
</sv>
|
|
||||||
|
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="1" class="mt-md">
|
<sv-container col="1" class="mt-md">
|
||||||
<sv label="回单凭证" *ngIf="i?.receiptType == 1">
|
<sv label="回单凭证" *ngIf="i?.supplementaryInformationVO?.stateReceipt">
|
||||||
<app-imagelist *ngIf="i?.receiptFilePath" [imgList]="[i?.receiptFilePath]"></app-imagelist>
|
<app-imagelist [imgList]="i?.receiptFilePath"></app-imagelist>
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="备注">
|
<sv label="备注">
|
||||||
{{i?.goodsResource?.remarks}}
|
{{ i?.supplementaryInformationVO?.remarks }}
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
@ -212,7 +209,7 @@
|
|||||||
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
<nz-card nzTitle="轨迹信息" style="width: 100%" [nzExtra]="extraTemplate" #distannce5>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
<st [scroll]="{y: '500px'}" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st [scroll]="{y: '500px'}" style="min-height: 600px;" #st [data]="addressItems" [columns]="logColumns2" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="12">
|
<div nz-col [nzSpan]="12">
|
||||||
@ -231,6 +228,7 @@
|
|||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
<nz-modal [(nzVisible)]="isVisible" [nzFooter]="nzModalFooter" nzTitle="附件信息" (nzOnOk)="handleOK()" (nzOnCancel)="handleCancel()">
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
|
<div *ngIf="!imges">暂无附件信息</div>
|
||||||
<app-imagelist [imgList]="imges"></app-imagelist>
|
<app-imagelist [imgList]="imges"></app-imagelist>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooter>
|
<ng-template #nzModalFooter>
|
||||||
|
|||||||
@ -24,12 +24,11 @@ import { WaybillManagementServe } from '../../services/waybill-management.servic
|
|||||||
styleUrls: ['./vehicle-detail.component.less']
|
styleUrls: ['./vehicle-detail.component.less']
|
||||||
})
|
})
|
||||||
export class WaybillManagementVehicleDetailComponent implements OnInit, OnDestroy {
|
export class WaybillManagementVehicleDetailComponent implements OnInit, OnDestroy {
|
||||||
|
|
||||||
id = this.route.snapshot.params.id;
|
id = this.route.snapshot.params.id;
|
||||||
MapList: any[]=[];
|
MapList: any[] = [];
|
||||||
trajectory = 'car';
|
trajectory = 'car';
|
||||||
mapList:any[] = []; //地图点位数据组
|
mapList: any[] = []; //地图点位数据组
|
||||||
addressItems:any[] = []; //打点地址数据组
|
addressItems: any[] = []; //打点地址数据组
|
||||||
i: any;
|
i: any;
|
||||||
totalObj: any;
|
totalObj: any;
|
||||||
attObj: any;
|
attObj: any;
|
||||||
@ -50,7 +49,7 @@ export class WaybillManagementVehicleDetailComponent implements OnInit, OnDestro
|
|||||||
{
|
{
|
||||||
title: '支付状态',
|
title: '支付状态',
|
||||||
className: 'text-center',
|
className: 'text-center',
|
||||||
index: 'paymentStatusLabel',
|
index: 'paymentStatusLabel'
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -60,19 +59,16 @@ export class WaybillManagementVehicleDetailComponent implements OnInit, OnDestro
|
|||||||
private route: ActivatedRoute,
|
private route: ActivatedRoute,
|
||||||
private msgSrv: NzMessageService,
|
private msgSrv: NzMessageService,
|
||||||
private service: WaybillManagementServe,
|
private service: WaybillManagementServe,
|
||||||
private modal: NzModalService,
|
private modal: NzModalService
|
||||||
) {
|
) {}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
ngOnDestroy(): void {
|
ngOnDestroy(): void {
|
||||||
this.subscribeScoll.unsubscribe();
|
this.subscribeScoll.unsubscribe();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initData()
|
this.initData();
|
||||||
this.getTrajectory()
|
this.getTrajectory();
|
||||||
this.subscribeScoll = fromEvent(window, 'scroll').subscribe(event => {
|
this.subscribeScoll = fromEvent(window, 'scroll').subscribe(event => {
|
||||||
this.scrollTop = document.documentElement.scrollTop;
|
this.scrollTop = document.documentElement.scrollTop;
|
||||||
});
|
});
|
||||||
@ -80,48 +76,38 @@ export class WaybillManagementVehicleDetailComponent implements OnInit, OnDestro
|
|||||||
initData() {
|
initData() {
|
||||||
const params = {
|
const params = {
|
||||||
id: this.id
|
id: this.id
|
||||||
}
|
};
|
||||||
this.service.request(this.service.$api_get_getWholeDetail, params).subscribe((res) => {
|
this.service.request(this.service.$api_get_getWholeDetail, params).subscribe(res => {
|
||||||
console.log(res)
|
console.log(res);
|
||||||
this.unLoadingPlaceVOList.push(...res.loadingPlace)
|
this.unLoadingPlaceVOList.push(...res.loadingPlace);
|
||||||
this.unLoadingPlaceVOList.push(...res.dischargePlace)
|
this.unLoadingPlaceVOList.push(...res.dischargePlace);
|
||||||
console.log(this.unLoadingPlaceVOList)
|
console.log(this.unLoadingPlaceVOList);
|
||||||
this.i = res;
|
this.i = res;
|
||||||
this.billExpenses = this.i?.billExpenseDetailVOList?.filter(
|
this.billExpenses = this.i?.billExpenseDetails?.filter(
|
||||||
(data: any) => data.costCode === 'PRE' || data.costCode === 'RECE' || data.costCode === 'BACK'
|
(data: any) => data.costCode === 'PRE' || data.costCode === 'RECE' || data.costCode === 'BACK'
|
||||||
);
|
);
|
||||||
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data: any) => data.displayStatus !== 'HIDE');
|
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data: any) => data.displayStatus !== 'HIDE');
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
goBack() {
|
goBack() {
|
||||||
window.history.go(-1);
|
window.history.go(-1);
|
||||||
}
|
}
|
||||||
agreement(value: any) {
|
agreement(value: any) {
|
||||||
console.log('123')
|
this.imges = this.i?.agreementFilePath;
|
||||||
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;
|
this.isVisible = true;
|
||||||
}
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
this.isVisible = false
|
this.isVisible = false;
|
||||||
}
|
}
|
||||||
handleOK() {
|
handleOK() {
|
||||||
this.isVisible = false
|
this.isVisible = false;
|
||||||
}
|
}
|
||||||
goDistance(elf: NzCardComponent) {
|
goDistance(elf: NzCardComponent) {
|
||||||
if (elf) {
|
if (elf) {
|
||||||
elf['elementRef'].nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'start' });
|
elf['elementRef'].nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'start' });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
// *确认发车
|
// *确认发车
|
||||||
|
|
||||||
sureDepart(item: any) {
|
sureDepart(item: any) {
|
||||||
@ -136,9 +122,8 @@ goDistance(elf: NzCardComponent) {
|
|||||||
nzFooter: null
|
nzFooter: null
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe((result: any) => {
|
modalRef.afterClose.subscribe((result: any) => {
|
||||||
this.initData()
|
this.initData();
|
||||||
|
});
|
||||||
});
|
|
||||||
}
|
}
|
||||||
// 确认到车
|
// 确认到车
|
||||||
sureArrive(item: any) {
|
sureArrive(item: any) {
|
||||||
@ -153,17 +138,16 @@ goDistance(elf: NzCardComponent) {
|
|||||||
nzFooter: null
|
nzFooter: null
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe((result: any) => {
|
modalRef.afterClose.subscribe((result: any) => {
|
||||||
this.initData()
|
this.initData();
|
||||||
|
});
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取车辆轨迹
|
// 获取车辆轨迹
|
||||||
getTrajectory(){
|
getTrajectory() {
|
||||||
this.service.request(this.service.$api_get_getTrajectory, { id: this.id }).subscribe(res => {
|
this.service.request(this.service.$api_get_getTrajectory, { id: this.id }).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
const points = res.trackArray;
|
const points = res.trackArray;
|
||||||
let list :any[] = [];
|
let list: any[] = [];
|
||||||
points?.forEach((item: any) => {
|
points?.forEach((item: any) => {
|
||||||
list.push({
|
list.push({
|
||||||
name: item.hgt,
|
name: item.hgt,
|
||||||
@ -172,7 +156,7 @@ goDistance(elf: NzCardComponent) {
|
|||||||
});
|
});
|
||||||
this.mapList = list;
|
this.mapList = list;
|
||||||
this.addressItems = res.cityArray;
|
this.addressItems = res.cityArray;
|
||||||
if(this.addressItems && this.addressItems.length > 0){
|
if (this.addressItems && this.addressItems.length > 0) {
|
||||||
this.addressItems.forEach(item => {
|
this.addressItems.forEach(item => {
|
||||||
item.vinOutTime = this.getLocalTime(item.vinOutTime);
|
item.vinOutTime = this.getLocalTime(item.vinOutTime);
|
||||||
});
|
});
|
||||||
@ -181,12 +165,12 @@ goDistance(elf: NzCardComponent) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取司机轨迹
|
// 获取司机轨迹
|
||||||
getDriverTrajectory(){
|
getDriverTrajectory() {
|
||||||
this.service.request(this.service.$api_get_getAppDriverPosition, { id: this.id }).subscribe(res => {
|
this.service.request(this.service.$api_get_getAppDriverPosition, { id: this.id }).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
const points = res.tracks;
|
const points = res.tracks;
|
||||||
let list :any[] = [];
|
let list: any[] = [];
|
||||||
points?.forEach((item: any) => {
|
points?.forEach((item: any) => {
|
||||||
list.push({
|
list.push({
|
||||||
name: item.hgt,
|
name: item.hgt,
|
||||||
@ -195,7 +179,7 @@ goDistance(elf: NzCardComponent) {
|
|||||||
});
|
});
|
||||||
this.mapList = list;
|
this.mapList = list;
|
||||||
this.addressItems = [...res.enclosureDataAppTrack];
|
this.addressItems = [...res.enclosureDataAppTrack];
|
||||||
if(this.addressItems && this.addressItems.length > 0){
|
if (this.addressItems && this.addressItems.length > 0) {
|
||||||
this.addressItems.forEach(item => {
|
this.addressItems.forEach(item => {
|
||||||
item.vinOutTime = this.getLocalTime(item.gtm);
|
item.vinOutTime = this.getLocalTime(item.gtm);
|
||||||
item.cityName = item.appAdress;
|
item.cityName = item.appAdress;
|
||||||
@ -203,14 +187,14 @@ goDistance(elf: NzCardComponent) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
trajectoryChange(event:any){
|
trajectoryChange(event: any) {
|
||||||
if(event ==='car'){
|
if (event === 'car') {
|
||||||
this.getTrajectory()
|
this.getTrajectory();
|
||||||
}else if(event ==='driver'){
|
} else if (event === 'driver') {
|
||||||
this.getDriverTrajectory();
|
this.getDriverTrajectory();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
getLocalTime(time: any) {
|
getLocalTime(time: any) {
|
||||||
return format(new Date(parseInt(time)), 'yyyy-MM-dd HH:mm:ss');
|
return format(new Date(parseInt(time)), 'yyyy-MM-dd HH:mm:ss');
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
* @Author: your name
|
* @Author: your name
|
||||||
* @Date: 2021-12-03 11:10:14
|
* @Date: 2021-12-03 11:10:14
|
||||||
* @LastEditTime : 2022-03-21 14:50:07
|
* @LastEditTime : 2022-03-21 14:52:24
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\vehicle\\vehicle.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\vehicle\\vehicle.component.html
|
||||||
|
|||||||
@ -56,7 +56,7 @@ export class WaybillManagementServe extends BaseService {
|
|||||||
// 获取轨迹
|
// 获取轨迹
|
||||||
$api_get_getTrajectory = `/api/sdc/billShipper/getTrajectoryByBillId`;
|
$api_get_getTrajectory = `/api/sdc/billShipper/getTrajectoryByBillId`;
|
||||||
// 获取订单司机轨迹
|
// 获取订单司机轨迹
|
||||||
$api_get_getAppDriverPosition = `/api/sdc/billShipper/getAppDriverPosition`;
|
$api_get_getAppDriverPosition = `/api/sdc/wayBillOperate/getAppDriverPosition`;
|
||||||
// 获取货主企业列表
|
// 获取货主企业列表
|
||||||
public $api_enterpriceList = '/api/mdc/cuc/enterpriseInfo/operate/enterpriceList';
|
public $api_enterpriceList = '/api/mdc/cuc/enterpriseInfo/operate/enterpriceList';
|
||||||
constructor(public injector: Injector) {
|
constructor(public injector: Injector) {
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
import { Component, Input, OnChanges, OnInit, Output, SimpleChanges, EventEmitter } from '@angular/core';
|
|
||||||
import { BaseService } from 'src/app/shared/services';
|
|
||||||
import { throwError } from 'rxjs';
|
|
||||||
import AMapLoader from '@amap/amap-jsapi-loader';
|
import AMapLoader from '@amap/amap-jsapi-loader';
|
||||||
|
import { Component, Input, OnChanges, OnInit, Output, SimpleChanges, EventEmitter, OnDestroy } from '@angular/core';
|
||||||
import { amapConf } from '@conf/amap.config';
|
import { amapConf } from '@conf/amap.config';
|
||||||
|
import { throwError } from 'rxjs';
|
||||||
|
import { BaseService } from 'src/app/shared/services';
|
||||||
declare var AMap: any;
|
declare var AMap: any;
|
||||||
declare var AMapUI: any;
|
declare var AMapUI: any;
|
||||||
declare var Loca: any;
|
declare var Loca: any;
|
||||||
@ -13,7 +13,7 @@ const CONFIG = amapConf;
|
|||||||
templateUrl: './amap-path-simplifier.component.html',
|
templateUrl: './amap-path-simplifier.component.html',
|
||||||
styleUrls: ['./amap-path-simplifier.component.less']
|
styleUrls: ['./amap-path-simplifier.component.less']
|
||||||
})
|
})
|
||||||
export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
export class AmapPathSimplifierComponent implements OnInit, OnChanges, OnDestroy {
|
||||||
aMap: any;
|
aMap: any;
|
||||||
pathSimplifierIns: any;
|
pathSimplifierIns: any;
|
||||||
geocoder: any;
|
geocoder: any;
|
||||||
@ -32,7 +32,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
mapHeight = '500px';
|
mapHeight = '500px';
|
||||||
|
|
||||||
@Output()
|
@Output()
|
||||||
clcikPointEvent = new EventEmitter<any>();
|
readonly clcikPointEvent = new EventEmitter<any>();
|
||||||
|
|
||||||
@Input()
|
@Input()
|
||||||
pois: any = [];
|
pois: any = [];
|
||||||
@ -45,7 +45,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
this.setPathIndex(this.selectedIndex);
|
this.setPathIndex(this.selectedIndex);
|
||||||
}
|
}
|
||||||
if (changes?.MapList?.currentValue && this?.pathSimplifierIns && changes.MapList?.currentValue.length > 0) {
|
if (changes?.MapList?.currentValue && this?.pathSimplifierIns && changes.MapList?.currentValue.length > 0) {
|
||||||
console.log(this.MapList);
|
// console.log(this.MapList);
|
||||||
this.pathList = [
|
this.pathList = [
|
||||||
{
|
{
|
||||||
name: '路线1',
|
name: '路线1',
|
||||||
@ -130,7 +130,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
getHoverTitle: function (pathData: any, pathIndex: any, pointIndex: any) {
|
getHoverTitle: function (pathData: any, pathIndex: any, pointIndex: any) {
|
||||||
if (pointIndex >= 0) {
|
if (pointIndex >= 0) {
|
||||||
//point
|
//point
|
||||||
return pathData.name + ',' + pathData.points[pointIndex].name;
|
return `${pathData.name},${pathData.points[pointIndex].name}`;
|
||||||
}
|
}
|
||||||
return '';
|
return '';
|
||||||
},
|
},
|
||||||
@ -147,7 +147,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
|
|
||||||
this.pathSimplifierIns.on('pointClick', (e: any, info: any) => {
|
this.pathSimplifierIns.on('pointClick', (e: any, info: any) => {
|
||||||
this.clcikPointEvent.emit({ e, info });
|
this.clcikPointEvent.emit({ e, info });
|
||||||
console.log('Click: ' + info.pathData.points[info.pointIndex].name);
|
console.log(`Click: ${info.pathData.points[info.pointIndex].name}`);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -202,7 +202,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
setData(pathList: Array<any>) {
|
setData(pathList: any[]) {
|
||||||
this.pathSimplifierIns.setData(pathList);
|
this.pathSimplifierIns.setData(pathList);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -224,7 +224,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** 根据经纬度获取地址信息 */
|
/** 根据经纬度获取地址信息 */
|
||||||
getPoiByPositon(position: Array<string>) {
|
getPoiByPositon(position: string[]) {
|
||||||
this.geocoder.getAddress(position, (status: any, result: any) => {
|
this.geocoder.getAddress(position, (status: any, result: any) => {
|
||||||
if (status === 'complete' && result.info === 'OK') {
|
if (status === 'complete' && result.info === 'OK') {
|
||||||
// result中对应详细地理坐标信息
|
// result中对应详细地理坐标信息
|
||||||
@ -239,6 +239,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 选中标点,设置窗口信息
|
* 选中标点,设置窗口信息
|
||||||
|
*
|
||||||
* @param location
|
* @param location
|
||||||
*/
|
*/
|
||||||
selectedPOI(location: any) {
|
selectedPOI(location: any) {
|
||||||
@ -250,6 +251,7 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 增加标记点
|
* 增加标记点
|
||||||
|
*
|
||||||
* @param poi
|
* @param poi
|
||||||
*/
|
*/
|
||||||
setPOI(poi: POI) {
|
setPOI(poi: POI) {
|
||||||
@ -278,5 +280,5 @@ export class AmapPathSimplifierComponent implements OnInit, OnChanges {
|
|||||||
export interface POI {
|
export interface POI {
|
||||||
markerLabel: string;
|
markerLabel: string;
|
||||||
color: string;
|
color: string;
|
||||||
position: Array<string>;
|
position: string[];
|
||||||
}
|
}
|
||||||
|
|||||||
@ -47,4 +47,19 @@ input[type="number"] {
|
|||||||
.break-word-all {
|
.break-word-all {
|
||||||
word-break: break-all;
|
word-break: break-all;
|
||||||
word-wrap : break-word;
|
word-wrap : break-word;
|
||||||
}
|
}
|
||||||
|
st {
|
||||||
|
.block-td {
|
||||||
|
.ant-divider-vertical {
|
||||||
|
display: none;
|
||||||
|
margin: 0;
|
||||||
|
border-left: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
st-td {
|
||||||
|
span>a {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user