车辆对接

This commit is contained in:
wangshiming
2022-01-06 11:13:20 +08:00
parent 78329f292c
commit c5a15ed78d
6 changed files with 236 additions and 49 deletions

View File

@ -31,6 +31,9 @@
placeholder="请输入装货地"
/>
</nz-input-group>
<span style="padding: 0 10px"
><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'start')"></i
></span>
</div>
</nz-form-control>
</nz-form-item>
@ -71,6 +74,9 @@
placeholder="请输入卸货地"
/>
</nz-input-group>
<span style="padding: 0 10px"
><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'end')"></i
></span>
</div>
</nz-form-control>
</nz-form-item>

View File

@ -18,6 +18,7 @@ import { SupplyManagementService} from '../../services/supply-management.service
import { map } from 'rxjs/operators';
import { of } from 'rxjs';
import { PublishSuccessComponent } from '../onecar-publish/publish-success/publish-success.component';
import { PublishAddressListComponent } from '../onecar-publish/address-list/address-list.component';
@Component({
selector: 'app-publish-goods-bulk-publish',
templateUrl: './bulk-publish.component.html',
@ -804,4 +805,48 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
choose(){
window.history.go(-1);
}
chooseAddress(index: number, type: string) {
const modalRef = this.modalService.create({
nzTitle: '选择地址',
nzContent: PublishAddressListComponent,
nzWidth: 900,
nzComponentParams: { spuStatus: '1' },
nzOnOk: item => {
console.log(item)
console.log(type)
const data = item.seleteData;
if (JSON.stringify(data) === '{}') return;
switch (type) {
case 'start':
this.startInfo[index] = {
detailedAddress: data.detailedAddress,
appUserName: data.contactName,
contractTelephone: data.contactTelephone,
latitude: data.contactTelephone,
longitude: data.latitude,
province: data.province,
city: data.city,
area: data.area,
type: '1'
};
break;
case 'end':
this.endInfo[index] = {
detailedAddress: data.detailedAddress,
appUserName: data.contactName,
contractTelephone: data.contactTelephone,
latitude: data.contactTelephone,
longitude: data.latitude,
province: data.province,
city: data.city,
area: data.area,
type: '2'
};
break;
default:
break;
}
}
});
}
}

View File

@ -32,8 +32,8 @@
/>
</nz-input-group>
<span style="padding: 0 10px"
><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="openMap('start', idx)"></i
></span>
><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'start')"></i
></span>
<span
><i nz-icon nzType="minus-circle-o" nzTheme="fill" style="color: #d9001b" (click)="subStartInfo($event, idx, data.id)"></i
></span>
@ -81,7 +81,9 @@
placeholder="请输入卸货地"
/>
</nz-input-group>
<span style="padding: 0 10px"><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff"></i></span>
<span style="padding: 0 10px"
><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'end')"></i
></span>
<span><i nz-icon nzType="minus-circle-o" nzTheme="fill" style="color: #d9001b" (click)="subEndInfo($event, idx)"></i></span>
</div>
</nz-form-control>
@ -254,14 +256,14 @@
<ng-template sf-template="total" let-i let-ui="ui">¥{{ i.value }}</ng-template>
<ng-template sf-template="paymentDays" let-i let-ui="ui">
<div nz-row>
<div class="align-center" style="width: 300px;">
<div class="align-center" style="width: 300px">
<div nz-col nzSpan="16">
<nz-input-number
[ngModel]="i.value"
[nzMin]="1"
[nzMax]="30"
[nzStep]="1"
style="width: 150px;"
style="width: 150px"
(ngModelChange)="i.setValue($event)"
nzPlaceHolder="请输入1-30"
></nz-input-number>

View File

@ -1034,4 +1034,49 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
choose(){
window.history.go(-1);
}
chooseAddress(index: number, type: string) {
const modalRef = this.modalService.create({
nzTitle: '选择地址',
nzContent: PublishAddressListComponent,
nzWidth: 900,
nzComponentParams: { spuStatus: '1' },
nzOnOk: item => {
console.log(item)
console.log(type)
const data = item.seleteData;
if (JSON.stringify(data) === '{}') return;
switch (type) {
case 'start':
this.startInfo[index] = {
detailedAddress: data.detailedAddress,
appUserName: data.contactName,
contractTelephone: data.contactTelephone,
latitude: data.contactTelephone,
longitude: data.latitude,
province: data.province,
city: data.city,
area: data.area,
type: '1'
};
break;
case 'end':
this.endInfo[index] = {
detailedAddress: data.detailedAddress,
appUserName: data.contactName,
contractTelephone: data.contactTelephone,
latitude: data.contactTelephone,
longitude: data.latitude,
province: data.province,
city: data.city,
area: data.area,
type: '2'
};
break;
default:
break;
}
}
});
}
}

View File

@ -17,7 +17,9 @@
</nz-card>
<nz-card>
<div class="card-title">装卸货信息<span class="tip-font">预计公里数:{{ totalDistance }}km预计行程耗时{{ totalTime }}小时</span></div>
<div class="card-title"
>装卸货信息<span class="tip-font">预计公里数:{{ totalDistance }}km预计行程耗时{{ totalTime }}小时</span></div
>
<form nz-form [formGroup]="validateForm1" role="form">
<div nz-row [nzGutter]="24">
@ -28,13 +30,20 @@
<nz-form-control [nzErrorTip]="'请输入装货地'">
<div class="align-center">
<nz-input-group [nzSuffix]="endInconTemp1">
<input nz-input [(ngModel)]="data1.detailedAddress" (click)="openMap('start', idx)"
formControlName="loadAddress{{ idx }}" placeholder="请输入装货地" />
<input
nz-input
[(ngModel)]="data1.detailedAddress"
(click)="openMap('start', idx)"
formControlName="loadAddress{{ idx }}"
placeholder="请输入装货地"
/>
</nz-input-group>
<span style="padding: 0 10px"><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff"
(click)="chooseAddress(idx, 'start')"></i></span>
<span *ngIf="idx !== 0"><i nz-icon nzType="minus-circle-o" nzTheme="fill" style="color: #d9001b"
(click)="subStartInfo($event, idx)"></i></span>
<span style="padding: 0 10px"
><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'start')"></i
></span>
<span *ngIf="idx !== 0"
><i nz-icon nzType="minus-circle-o" nzTheme="fill" style="color: #d9001b" (click)="subStartInfo($event, idx)"></i
></span>
</div>
</nz-form-control>
</nz-form-item>
@ -42,12 +51,25 @@
<nz-form-label [nzSpan]="4" nzRequired>联系人</nz-form-label>
<div class="align-center">
<nz-form-control [nzErrorTip]="'请输入联系人姓名'">
<input nz-input [(ngModel)]="data1.appUserName" formControlName="loadName{{ idx }}" name="loadName{{ idx }}" maxlength="30"
placeholder="请输入联系人姓名" />
<input
nz-input
[(ngModel)]="data1.appUserName"
formControlName="loadName{{ idx }}"
name="loadName{{ idx }}"
maxlength="30"
placeholder="请输入联系人姓名"
/>
</nz-form-control>
<nz-form-control [nzErrorTip]="'请输入联系人电话'">
<input style="margin-left: 12px" nz-input [(ngModel)]="data1.contractTelephone" maxlength="11"
formControlName="loadPhone{{ idx }}" name="loadPhone{{ idx }}" placeholder="请输入联系人电话" />
<input
style="margin-left: 12px"
nz-input
[(ngModel)]="data1.contractTelephone"
maxlength="11"
formControlName="loadPhone{{ idx }}"
name="loadPhone{{ idx }}"
placeholder="请输入联系人电话"
/>
</nz-form-control>
</div>
</nz-form-item>
@ -62,8 +84,7 @@
</div>
<div nz-col [nzSpan]="4">
<div style="display: flex; justify-content: center">
<span style="padding: 24 px; font-size: 30px; color: #7d7d7d"><i nz-icon nzType="swap"
nzTheme="outline"></i></span>
<span style="padding: 24 px; font-size: 30px; color: #7d7d7d"><i nz-icon nzType="swap" nzTheme="outline"></i></span>
</div>
</div>
<div nz-col [nzSpan]="10">
@ -73,13 +94,21 @@
<nz-form-control [nzErrorTip]="'请输入卸货地'">
<div class="align-center">
<nz-input-group [nzSuffix]="endInconTemp1">
<input nz-input [(ngModel)]="data2.detailedAddress" (click)="openMap('end', idx)"
formControlName="unloadAddress{{ idx }}" placeholder="请输入卸货地" name="unloadAddress{{ idx }}" />
<input
nz-input
[(ngModel)]="data2.detailedAddress"
(click)="openMap('end', idx)"
formControlName="unloadAddress{{ idx }}"
placeholder="请输入卸货地"
name="unloadAddress{{ idx }}"
/>
</nz-input-group>
<span style="padding: 0 10px"><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff"
(click)="chooseAddress(idx, 'start')"></i></span>
<span *ngIf="idx !== 0"><i nz-icon nzType="minus-circle-o" nzTheme="fill" style="color: #d9001b"
(click)="subEndInfo($event, idx)"></i></span>
<span style="padding: 0 10px"
><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'end')"></i
></span>
<span *ngIf="idx !== 0"
><i nz-icon nzType="minus-circle-o" nzTheme="fill" style="color: #d9001b" (click)="subEndInfo($event, idx)"></i
></span>
</div>
</nz-form-control>
</nz-form-item>
@ -87,12 +116,25 @@
<nz-form-label [nzSpan]="4" nzRequired>联系人</nz-form-label>
<div class="align-center">
<nz-form-control [nzErrorTip]="'请输入联系人姓名'">
<input nz-input [(ngModel)]="data2.appUserName" maxlength="30" formControlName="unloadName{{ idx }}" name="unloadAddress{{ idx }}"
placeholder="请输入联系人姓名" />
<input
nz-input
[(ngModel)]="data2.appUserName"
maxlength="30"
formControlName="unloadName{{ idx }}"
name="unloadAddress{{ idx }}"
placeholder="请输入联系人姓名"
/>
</nz-form-control>
<nz-form-control [nzErrorTip]="'请输入联系人电话'">
<input style="margin-left: 12px" nz-input [(ngModel)]="data2.contractTelephone"
formControlName="unloadPhone{{ idx }}" name="unloadAddress{{ idx }}" maxlength="11" placeholder="请输入联系人电话" />
<input
style="margin-left: 12px"
nz-input
[(ngModel)]="data2.contractTelephone"
formControlName="unloadPhone{{ idx }}"
name="unloadAddress{{ idx }}"
maxlength="11"
placeholder="请输入联系人电话"
/>
</nz-form-control>
</div>
</nz-form-item>
@ -137,20 +179,41 @@
<sf #sf4 [schema]="schema4" [button]="'none'" [ui]="ui4" [formData]="sf4data">
<ng-template sf-template="weight" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<input nz-input type="number" [ngModel]="i.value" min="0" step="0.01" (ngModelChange)="i.setValue($event)"
placeholder="总重量,必填" />
<input
nz-input
type="number"
[ngModel]="i.value"
min="0"
step="0.01"
(ngModelChange)="i.setValue($event)"
placeholder="总重量,必填"
/>
</nz-input-group>
</ng-template>
<ng-template sf-template="volume" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<input nz-input type="number" [ngModel]="i.value" min="0" step="0.01" (ngModelChange)="i.setValue($event)"
placeholder="总体积" />
<input
nz-input
type="number"
[ngModel]="i.value"
min="0"
step="0.01"
(ngModelChange)="i.setValue($event)"
placeholder="总体积"
/>
</nz-input-group>
</ng-template>
<ng-template sf-template="number" let-i let-ui="ui">
<nz-input-group [nzAddOnAfter]="''">
<input nz-input type="number" [ngModel]="i.value" min="0" step="0.01" (ngModelChange)="i.setValue($event)"
placeholder="总车次" />
<input
nz-input
type="number"
[ngModel]="i.value"
min="0"
step="0.01"
(ngModelChange)="i.setValue($event)"
placeholder="总车次"
/>
</nz-input-group>
</ng-template>
</sf>
@ -174,10 +237,17 @@
<sf #sf5 [schema]="schema5" [button]="'none'" [ui]="ui5" [formData]="sf5data">
<ng-template sf-template="goodsValue" let-i let-ui="ui">
<div class="align-center">
<nz-input-number [ngModel]="i.value" [nzMin]="50000" [nzMax]="3000000" [nzStep]="0.01"
(ngModelChange)="i.setValue($event)" nzPlaceHolder="请输入50000-3000000之间数值保留2位小数"></nz-input-number>
<span style="padding: 0 12px" nz-tooltip [nzTooltipTitle]="template2" nzTooltipPlacement="bottom"><i nz-icon
nzType="exclamation-circle" nzTheme="outline" style="color: #1890ff"></i></span>
<nz-input-number
[ngModel]="i.value"
[nzMin]="50000"
[nzMax]="3000000"
[nzStep]="0.01"
(ngModelChange)="i.setValue($event)"
nzPlaceHolder="请输入50000-3000000之间数值保留2位小数"
></nz-input-number>
<span style="padding: 0 12px" nz-tooltip [nzTooltipTitle]="template2" nzTooltipPlacement="bottom"
><i nz-icon nzType="exclamation-circle" nzTheme="outline" style="color: #1890ff"></i
></span>
<ng-template #template2>
<p>注意事项:</p>
<p>①请仔细阅读《投保告知》</p>
@ -197,8 +267,13 @@
<div nz-col nzSpan="12">
<sf #sf6 [schema]="schema6" [button]="'none'" [ui]="ui6" [formData]="sf6data">
<ng-template sf-template="receiptAddressId" let-i let-ui="ui">
<input nz-input [ngModel]="i.value" (ngModelChange)="i.setValue($event)" placeholder="请点击选择收回单地址"
(click)="backBillChange()" />
<input
nz-input
[ngModel]="i.value"
(ngModelChange)="i.setValue($event)"
placeholder="请点击选择收回单地址"
(click)="backBillChange()"
/>
</ng-template>
</sf>
</div>
@ -210,15 +285,21 @@
<div nz-row>
<div nz-col nzSpan="12">
<sf #sf7 [schema]="schema7" [button]="'none'" [ui]="ui7" [formData]="sf7data">
<ng-template sf-template="subtotal" let-i let-ui="ui">¥{{i.value}}</ng-template>
<ng-template sf-template="appendFee" let-i let-ui="ui">¥{{i.value}}(费率:{{currentRate | number: '0.2-4' }}%</ng-template>
<ng-template sf-template="total" let-i let-ui="ui">¥{{i.value}}</ng-template>
<ng-template sf-template="subtotal" let-i let-ui="ui">¥{{ i.value }}</ng-template>
<ng-template sf-template="appendFee" let-i let-ui="ui">¥{{ i.value }}(费率:{{ currentRate | number: '0.2-4' }}%</ng-template>
<ng-template sf-template="total" let-i let-ui="ui">¥{{ i.value }}</ng-template>
<ng-template sf-template="paymentDays" let-i let-ui="ui">
<div nz-row>
<div class="align-center">
<div nz-col nzSpan="16">
<nz-input-number [ngModel]="i.value" [nzMin]="1" [nzMax]="30" [nzStep]="1"
(ngModelChange)="i.setValue($event)" nzPlaceHolder="请输入1-30"></nz-input-number>
<nz-input-number
[ngModel]="i.value"
[nzMin]="1"
[nzMax]="30"
[nzStep]="1"
(ngModelChange)="i.setValue($event)"
nzPlaceHolder="请输入1-30"
></nz-input-number>
</div>
<div nz-col nzSpan="8">
<span>天内支付运费</span>
@ -233,10 +314,16 @@
<nz-card>
<div class="align-center">
<button nz-button nzType="primary" (click)="submit('assign')" *ngIf="type === 'add'">指派熟车</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submit('publish')"
*ngIf="type === 'add'">司机抢单</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submit('publish')" *ngIf="type === 'edit'"
[nzLoading]="service.http.loading">保存</button>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="submit('publish')" *ngIf="type === 'add'">司机抢单</button>
<button
nz-button
nzType="primary"
style="margin-left: 48px"
(click)="submit('publish')"
*ngIf="type === 'edit'"
[nzLoading]="service.http.loading"
>保存</button
>
<button nz-button nzType="primary" style="margin-left: 48px" (click)="close()" *ngIf="type === 'edit'">取消</button>
</div>
</nz-card>

View File

@ -771,6 +771,8 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
nzWidth: 900,
nzComponentParams: { spuStatus: '1' },
nzOnOk: item => {
console.log(item)
console.log(type)
const data = item.seleteData;
if (JSON.stringify(data) === '{}') return;
switch (type) {