Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop
This commit is contained in:
@ -61,7 +61,7 @@
|
|||||||
{{ (costInfo?.hrvatmoney || 0) | currency }}
|
{{ (costInfo?.hrvatmoney || 0) | currency }}
|
||||||
</se>
|
</se>
|
||||||
<se label="付款金额" required>
|
<se label="付款金额" required>
|
||||||
{{ costInfo?.hrpaymoney | currency }}
|
{{ costInfo?.hrmoney | currency}}
|
||||||
</se>
|
</se>
|
||||||
</se-container>
|
</se-container>
|
||||||
</div>
|
</div>
|
||||||
@ -84,7 +84,9 @@
|
|||||||
<span *ngIf="textStatus">{{ item.hrmoney | currency}}</span>
|
<span *ngIf="textStatus">{{ item.hrmoney | currency}}</span>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="armoney" let-item let-index="index">
|
<ng-template st-row="armoney" let-item let-index="index">
|
||||||
{{ item.armoney | currency}}
|
<!-- {{ item.armoney | currency}} -->
|
||||||
|
<span *ngIf="!textStatus">{{ item.armoney | currency}}</span>
|
||||||
|
<span *ngIf="textStatus">{{ item.hrmoney | currency}}</span>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="arkpmoney" let-item let-index="index">
|
<ng-template st-row="arkpmoney" let-item let-index="index">
|
||||||
{{ item.arkpmoney | currency}}
|
{{ item.arkpmoney | currency}}
|
||||||
|
|||||||
@ -41,7 +41,7 @@ export class PayableOrderDetailComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
Object.assign(requestOptions.body, { billHId: this.billHId });
|
Object.assign(requestOptions.body, { phxHId: this.billHId });
|
||||||
if (this.sf) {
|
if (this.sf) {
|
||||||
Object.assign(requestOptions.body, {
|
Object.assign(requestOptions.body, {
|
||||||
...this.sf.value,
|
...this.sf.value,
|
||||||
@ -159,14 +159,14 @@ export class PayableOrderDetailComponent implements OnInit {
|
|||||||
private initST(): STColumn[] {
|
private initST(): STColumn[] {
|
||||||
return [
|
return [
|
||||||
{ title: '序号', render: 'no', width: 80 },
|
{ title: '序号', render: 'no', width: 80 },
|
||||||
{ title: '费用号', index: 'feeHCode', width: 100 },
|
{ title: '费用号', index: 'feeHCode', width: 140 },
|
||||||
{ title: '费用日期', index: 'feedate', type: 'date', width: 150 },
|
{ title: '费用日期', index: 'feedate', type: 'date', width: 150 },
|
||||||
{ title: '订单号', index: 'billHCode', width: 100 },
|
{ title: '订单号', index: 'billHCode', width: 140 },
|
||||||
{ title: '订单日期', index: 'billTime', width: 150 },
|
{ title: '订单日期', index: 'billTime', width: 150 },
|
||||||
{ title: '费用类型', index: 'feetype', width: 90 },
|
{ title: '费用类型', index: 'feetype', width: 90 },
|
||||||
{ title: '订单费用科目', index: 'billLTypeLabel', width: 100 },
|
{ title: '订单费用科目', index: 'billLTypeLabel', width: 100 },
|
||||||
{ title: '费用科目', index: 'feeSubIdName', width: 140 },
|
{ title: '费用科目', index: 'feeSubIdName', width: 140 },
|
||||||
{ title: '结算客户', index: 'cnoName', width: 100 },
|
{ title: '结算客户', index: 'cnoName', width: 140 },
|
||||||
{
|
{
|
||||||
title: '已收金额',
|
title: '已收金额',
|
||||||
index: 'phxmoney',
|
index: 'phxmoney',
|
||||||
|
|||||||
@ -263,7 +263,7 @@ export class PayableOrderComponent implements OnInit {
|
|||||||
{
|
{
|
||||||
text: '浏览',
|
text: '浏览',
|
||||||
click: item =>
|
click: item =>
|
||||||
this.router.navigate(['/financial-management/payable-order/detail/' + item.id], { queryParams: { billHId: item.billHId } })
|
this.router.navigate(['/financial-management/payable-order/detail/' + item.id], { queryParams: { billHId: item.id } })
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@ -36,7 +36,7 @@
|
|||||||
{{ item.orderPaymentCode }} <br> <a>{{ item.paymentStatusLabel }}</a>
|
{{ item.orderPaymentCode }} <br> <a>{{ item.paymentStatusLabel }}</a>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="amountDetails" let-item let-index="index" let-column="column">
|
<ng-template st-row="amountDetails" let-item let-index="index" let-column="column">
|
||||||
预付:{{ item.price | currency }}<br />
|
{{item.costName}}:{{ item.price | currency }}<br />
|
||||||
<ng-container *ngIf="item.payType==='1'">
|
<ng-container *ngIf="item.payType==='1'">
|
||||||
附加费: {{ item.surcharge| currency }}
|
附加费: {{ item.surcharge| currency }}
|
||||||
</ng-container>
|
</ng-container>
|
||||||
|
|||||||
@ -258,6 +258,7 @@ export class PaymentRecordComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
item.surcharge = surcharge.toFixed(2);
|
item.surcharge = surcharge.toFixed(2);
|
||||||
item.price = item.amountDetails?.[0]?.price || 0;
|
item.price = item.amountDetails?.[0]?.price || 0;
|
||||||
|
item.costName = item.amountDetails?.[0]?.costName;
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-24 16:58:02
|
* @Date : 2021-12-24 16:58:02
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-01 13:42:44
|
* @LastEditTime : 2022-03-04 14:15:24
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail-change\\bulk-detail-change.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail-change\\bulk-detail-change.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -34,7 +34,7 @@
|
|||||||
<sv label="货主">{{ i?.goodsResource?.shipperAppUserName }} </sv>
|
<sv label="货主">{{ i?.goodsResource?.shipperAppUserName }} </sv>
|
||||||
<sv label="所属项目">{{i?.goodsResource?.enterpriseProjectName}}</sv>
|
<sv label="所属项目">{{i?.goodsResource?.enterpriseProjectName}}</sv>
|
||||||
<sv label="服务类型">{{i?.goodsResource?.serviceTypeLabel}}</sv>
|
<sv label="服务类型">{{i?.goodsResource?.serviceTypeLabel}}</sv>
|
||||||
<sv label="录单员">{{i?.goodsResource?.createUserName}} /{{i?.goodsResource?.createUserPhone}} </sv>
|
<sv label="录单员">{{i?.createUserName}} /{{i?.createUserPhone}} </sv>
|
||||||
<sv label="调度员">{{i?.goodsResource?.dispatchName}}/{{i?.goodsResource?.dispatchPhone}} </sv>
|
<sv label="调度员">{{i?.goodsResource?.dispatchName}}/{{i?.goodsResource?.dispatchPhone}} </sv>
|
||||||
</div>
|
</div>
|
||||||
<nz-tabset style="margin-top: 15px;">
|
<nz-tabset style="margin-top: 15px;">
|
||||||
@ -42,7 +42,7 @@
|
|||||||
</nz-tab>
|
</nz-tab>
|
||||||
<nz-tab nzTitle="基本信息" (nzClick)="goDistance(distannce2)">
|
<nz-tab nzTitle="基本信息" (nzClick)="goDistance(distannce2)">
|
||||||
</nz-tab>
|
</nz-tab>
|
||||||
<nz-tab nzTitle="运费信息" (nzClick)="goDistance(distannce3)">
|
<nz-tab nzTitle="运费信息" (nzClick)="goDistance(distannce3)">
|
||||||
</nz-tab>
|
</nz-tab>
|
||||||
<nz-tab nzTitle="附件信息" (nzClick)="goDistance(distannce4)">
|
<nz-tab nzTitle="附件信息" (nzClick)="goDistance(distannce4)">
|
||||||
</nz-tab>
|
</nz-tab>
|
||||||
@ -125,7 +125,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="4">
|
<div nz-col [nzSpan]="4">
|
||||||
<div style="display: flex; justify-content: center">
|
<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 class="swap-icon" (click)="swapAddress()"><i nz-icon nzType="swap"
|
||||||
|
nzTheme="outline"></i></span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="10">
|
<div nz-col [nzSpan]="10">
|
||||||
@ -177,7 +178,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div nz-row [nzGutter]="24" style="margin-top: 24px">
|
<!-- <div nz-row [nzGutter]="24" style="margin-top: 24px">
|
||||||
<div nz-col [nzSpan]="10">
|
<div nz-col [nzSpan]="10">
|
||||||
<nz-form-item>
|
<nz-form-item>
|
||||||
<nz-form-label [nzSpan]="4" nzRequired>装货时间</nz-form-label>
|
<nz-form-label [nzSpan]="4" nzRequired>装货时间</nz-form-label>
|
||||||
@ -195,7 +196,7 @@
|
|||||||
</nz-form-control>
|
</nz-form-control>
|
||||||
</nz-form-item>
|
</nz-form-item>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
<ng-template #endInconTemp1><i nz-icon nzType="environment" nzTheme="outline"></i></ng-template>
|
<ng-template #endInconTemp1><i nz-icon nzType="environment" nzTheme="outline"></i></ng-template>
|
||||||
</form>
|
</form>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
@ -205,18 +206,7 @@
|
|||||||
<sf #sf3 [schema]="schema3" [formData]="sf3data" [button]="'none'" [ui]="ui3"></sf>
|
<sf #sf3 [schema]="schema3" [formData]="sf3data" [button]="'none'" [ui]="ui3"></sf>
|
||||||
<sf #sf4 [schema]="schema4" [formData]="sf4data" [button]="'none'" [ui]="ui4">
|
<sf #sf4 [schema]="schema4" [formData]="sf4data" [button]="'none'" [ui]="ui4">
|
||||||
<ng-template sf-template="weight" let-item let-ui="ui">
|
<ng-template sf-template="weight" let-item let-ui="ui">
|
||||||
<nz-input-group [nzAddOnAfter]="'吨'">
|
{{i?.goodsInfoList?.[0]?.weight}}吨,{{i?.goodsInfoList?.[0]?.volume}}方,{{i?.goodsInfoList?.[0]?.number}}件
|
||||||
<input
|
|
||||||
nz-input
|
|
||||||
type="number"
|
|
||||||
[ngModel]="item.value"
|
|
||||||
min="0"
|
|
||||||
[max]="999999"
|
|
||||||
step="0.01"
|
|
||||||
(ngModelChange)="item.setValue($event)"
|
|
||||||
placeholder="总重量,必填"
|
|
||||||
/>
|
|
||||||
</nz-input-group>
|
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template sf-template="volume" let-item let-ui="ui">
|
<ng-template sf-template="volume" let-item let-ui="ui">
|
||||||
<nz-input-group [nzAddOnAfter]="'方'">
|
<nz-input-group [nzAddOnAfter]="'方'">
|
||||||
@ -271,9 +261,11 @@
|
|||||||
|
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<nz-card nzTitle="运费信息" #distannce3>
|
<nz-card nzTitle="运费信息"#distannce3>
|
||||||
<h2>{{i?.goodsInfoList?.[0]?.freightPrice}}{{i?.goodsInfoList?.[0]?.freightTypeLabel}}(以发货为准,保留小数)</h2>
|
<div *ngIf="(i?.billStatus == '3' && i.goodsInfoList?.[0].settlementBasis == '2') || (i?.billStatus == '4' && i.goodsInfoList?.[0].settlementBasis == '1')" >
|
||||||
<st #st [data]="i?.billExpenseDetails" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
<h2>{{i?.goodsInfoList?.[0]?.freightPrice}}{{i?.goodsInfoList?.[0]?.freightTypeLabel}}({{ i?.goodsInfoList?.[0]?.settlementBasisLabel ? i?.goodsInfoList?.[0]?.settlementBasisLabel + ',' :' ' }}{{i?.goodsInfoList?.[0]?.ruleLabel}})</h2>
|
||||||
|
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
|
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
|
||||||
<ng-template st-row="price" let-item let-index="index">
|
<ng-template st-row="price" let-item let-index="index">
|
||||||
{{ item.price | currency }}
|
{{ item.price | currency }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -288,6 +280,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div>收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}</div>
|
<div>收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}</div>
|
||||||
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
|
|
||||||
@ -352,17 +345,23 @@
|
|||||||
|
|
||||||
<nz-card>
|
<nz-card>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<nz-card nzTitle="轨迹信息" style="width: 100%;" #distannce5>
|
<nz-card nzTitle="轨迹信息" style="width: 100%" id="distannce5" [nzExtra]="extraTemplate" #distannce5>
|
||||||
<div nz-row >
|
<div nz-row>
|
||||||
<div nz-col [nzSpan]='12'>
|
<div nz-col [nzSpan]="12">
|
||||||
<!-- <st #st [data]="i?.auditRecordList" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st [scroll]="{y: '500px'}" #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">
|
||||||
<amap-path-simplifier></amap-path-simplifier>
|
<amap-path-simplifier [mapWidth]="'100%'" [mapHeight]="'600px'" [MapList]="MapList"></amap-path-simplifier>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
<ng-template #extraTemplate>
|
||||||
|
<nz-radio-group [(ngModel)]="trajectory">
|
||||||
|
<label nz-radio-button nzValue="car">车辆轨迹</label>
|
||||||
|
<label nz-radio-button nzValue="driver">司机轨迹</label>
|
||||||
|
</nz-radio-group>
|
||||||
|
</ng-template>
|
||||||
</div>
|
</div>
|
||||||
</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()">
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-24 16:58:02
|
* @Date : 2021-12-24 16:58:02
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-28 12:01:57
|
* @LastEditTime : 2022-03-04 14:15:21
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail-change\\bulk-detail-change.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail-change\\bulk-detail-change.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -22,6 +22,7 @@ import { NzUploadChangeParam, NzUploadFile } from 'ng-zorro-antd/upload';
|
|||||||
import { Observable, Observer } from 'rxjs';
|
import { Observable, Observer } from 'rxjs';
|
||||||
import { apiConf } from '@conf/api.conf';
|
import { apiConf } from '@conf/api.conf';
|
||||||
import { OrderManagementService } from '../../services/order-management.service';
|
import { OrderManagementService } from '../../services/order-management.service';
|
||||||
|
import format from 'date-fns/format';
|
||||||
import { NzCardComponent } from 'ng-zorro-antd/card';
|
import { NzCardComponent } from 'ng-zorro-antd/card';
|
||||||
import { map } from 'rxjs/operators';
|
import { map } from 'rxjs/operators';
|
||||||
function getBase64(file: File): Promise<string | ArrayBuffer | null> {
|
function getBase64(file: File): Promise<string | ArrayBuffer | null> {
|
||||||
@ -40,7 +41,9 @@ function getBase64(file: File): Promise<string | ArrayBuffer | null> {
|
|||||||
export class OrderManagementBulkDetailChangeComponent implements OnInit {
|
export class OrderManagementBulkDetailChangeComponent implements OnInit {
|
||||||
validateForm1: FormGroup;
|
validateForm1: FormGroup;
|
||||||
id = this.route.snapshot.params.id;
|
id = this.route.snapshot.params.id;
|
||||||
|
trajectory = 'car';
|
||||||
@ViewChild('distannce3', { static: false })
|
@ViewChild('distannce3', { static: false })
|
||||||
|
MapList: any[]=[];
|
||||||
i: any= {unLoadingPlaceList:[]};
|
i: any= {unLoadingPlaceList:[]};
|
||||||
totalDistance = 0.0; //总里程
|
totalDistance = 0.0; //总里程
|
||||||
totalTime = 0.0; //路程总时间
|
totalTime = 0.0; //路程总时间
|
||||||
@ -66,29 +69,16 @@ loadTime: any; // 货源单设置回显
|
|||||||
@ViewChild('sf4', { static: false }) sf4!: SFComponent;
|
@ViewChild('sf4', { static: false }) sf4!: SFComponent;
|
||||||
schema4: SFSchema = {};
|
schema4: SFSchema = {};
|
||||||
isVisible = false;
|
isVisible = false;
|
||||||
|
billExpenses: any[] = []; //运费信息表格信息
|
||||||
|
addressItems: any[] = []; //打点地址数据组
|
||||||
ui4!: SFUISchema;
|
ui4!: SFUISchema;
|
||||||
formData: any;
|
formData: any;
|
||||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
ui: SFUISchema = {};
|
ui: SFUISchema = {};
|
||||||
logColumns: STColumn[] = [
|
logColumns: STColumn[] = [
|
||||||
{ title: '款项', index: 'expenseName' },
|
{ title: '时间', index: 'vinOutTime' },
|
||||||
{ title: '运输费(元)', render: 'price' },
|
{ title: '地点', index: 'cityName' },
|
||||||
{ title: '附加费(元)', render: 'surcharge' },
|
|
||||||
{ title: '支付时间', index: ' paymentTime' },
|
|
||||||
{
|
|
||||||
title: '支付状态',
|
|
||||||
className: 'text-center',
|
|
||||||
index: 'paymentStatus',
|
|
||||||
type: 'badge',
|
|
||||||
width: '120px',
|
|
||||||
badge: {
|
|
||||||
'1': { text: '待申请', color: 'warning' },
|
|
||||||
'2': { text: '已支付', color: 'success' },
|
|
||||||
'3': { text: '已拒绝', color: 'warning' },
|
|
||||||
'4': { text: '申请中', color: 'warning' }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
constructor(
|
constructor(
|
||||||
private route: ActivatedRoute,
|
private route: ActivatedRoute,
|
||||||
@ -319,8 +309,7 @@ loadTime: any; // 货源单设置回显
|
|||||||
this.service.request(this.service.$api_getBulkBillDetail, {id: this.id}).subscribe(res => {
|
this.service.request(this.service.$api_getBulkBillDetail, {id: this.id}).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.i = res;
|
this.i = res;
|
||||||
this.attObj = this.i?.billExpenseDetails?.filter((data: any) => data.expenseCode === 'ATT')[0];
|
this.billExpenses = this.i?.billExpenseDetails?.filter((data: any) => data.expenseCode === 'TRA');
|
||||||
this.totalObj = this.i?.billExpenseDetails?.filter((data: any) => data.expenseCode === 'TOTAL')[0];
|
|
||||||
// 对装货凭证进行初始化
|
// 对装货凭证进行初始化
|
||||||
let arr : any= []
|
let arr : any= []
|
||||||
res?.receiptFilePath.forEach((element: any, index: any) => {
|
res?.receiptFilePath.forEach((element: any, index: any) => {
|
||||||
@ -438,7 +427,13 @@ loadTime: any; // 货源单设置回显
|
|||||||
this.loadTime = res.loadTime
|
this.loadTime = res.loadTime
|
||||||
this.unloadTime = res.unloadTime
|
this.unloadTime = res.unloadTime
|
||||||
this.dirvingMessage = res.billExpenseDetails;
|
this.dirvingMessage = res.billExpenseDetails;
|
||||||
|
// 计算里程,时间
|
||||||
|
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
||||||
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
||||||
|
this.totalDistance = res.distance;
|
||||||
|
this.totalTime = res.time;
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -516,6 +511,7 @@ loadTime: any; // 货源单设置回显
|
|||||||
// -------------------装卸货信息处理
|
// -------------------装卸货信息处理
|
||||||
// 打开地图
|
// 打开地图
|
||||||
// 打开地图
|
// 打开地图
|
||||||
|
// 打开地图
|
||||||
openMap(type: string, index: number) {
|
openMap(type: string, index: number) {
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
nzTitle: '',
|
nzTitle: '',
|
||||||
@ -523,30 +519,32 @@ loadTime: any; // 货源单设置回显
|
|||||||
nzWidth: 900,
|
nzWidth: 900,
|
||||||
nzOnOk: item => {
|
nzOnOk: item => {
|
||||||
const poi = item.poi;
|
const poi = item.poi;
|
||||||
const locList = poi.pois;
|
const locList = poi.location.toString().split(',');
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case 'start':
|
case 'start':
|
||||||
this.startInfo[index].detailedAddress = poi.formattedAddress;
|
this.startInfo[index].detailedAddress = poi.district + poi.name;
|
||||||
this.startInfo[index].longitude = locList[0];
|
this.startInfo[index].longitude = locList[0];
|
||||||
this.startInfo[index].latitude = locList[1];
|
this.startInfo[index].latitude = locList[1];
|
||||||
this.startInfo[index].province = poi.addressComponent.province;
|
this.startInfo[index].province = poi.cityInfo.province;
|
||||||
this.startInfo[index].city = poi.addressComponent.city;
|
this.startInfo[index].city = poi.cityInfo.city;
|
||||||
this.startInfo[index].area = poi.addressComponent.district;
|
this.startInfo[index].area = poi.cityInfo.district;
|
||||||
|
this.startInfo[index].address = poi.name;
|
||||||
break;
|
break;
|
||||||
case 'end':
|
case 'end':
|
||||||
this.endInfo[index].detailedAddress = poi.formattedAddress;
|
this.endInfo[index].detailedAddress = poi.district + poi.name;
|
||||||
this.endInfo[index].longitude = locList[0];
|
this.endInfo[index].longitude = locList[0];
|
||||||
this.endInfo[index].latitude = locList[1];
|
this.endInfo[index].latitude = locList[1];
|
||||||
this.endInfo[index].province = poi.addressComponent.province;
|
this.endInfo[index].province = poi.cityInfo.province;
|
||||||
this.endInfo[index].city = poi.addressComponent.city;
|
this.endInfo[index].city = poi.cityInfo.city;
|
||||||
this.endInfo[index].area = poi.addressComponent.district;
|
this.endInfo[index].area = poi.cityInfo.district;
|
||||||
|
this.endInfo[index].address = poi.name;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
||||||
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe((res: any) => {
|
||||||
this.totalDistance = res.distance;
|
this.totalDistance = res.distance;
|
||||||
this.totalTime = res.time;
|
this.totalTime = res.time;
|
||||||
});
|
});
|
||||||
@ -554,7 +552,6 @@ loadTime: any; // 货源单设置回显
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
initSF3() {
|
initSF3() {
|
||||||
this.schema3 = {
|
this.schema3 = {
|
||||||
properties: {
|
properties: {
|
||||||
@ -631,94 +628,6 @@ loadTime: any; // 货源单设置回显
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
initSF4() {
|
|
||||||
this.schema4 = {
|
|
||||||
properties: {
|
|
||||||
weight: {
|
|
||||||
type: 'string',
|
|
||||||
title: '货物数量',
|
|
||||||
ui: {
|
|
||||||
widget: 'custom',
|
|
||||||
placeholder: '请输入',
|
|
||||||
errors: { required: '必填项' }
|
|
||||||
}
|
|
||||||
},
|
|
||||||
volume: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'custom',
|
|
||||||
placeholder: '请输入'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
number: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'custom',
|
|
||||||
placeholder: '请输入'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
carModel: {
|
|
||||||
type: 'string',
|
|
||||||
title: '车型/车长',
|
|
||||||
ui: {
|
|
||||||
widget: 'select',
|
|
||||||
mode: 'multiple',
|
|
||||||
maxMultipleCount:3,
|
|
||||||
placeholder: '请选择车型',
|
|
||||||
errors: { required: '请选择车型' },
|
|
||||||
asyncData: () => this.service.getDictOptions({ dictKey: 'car:model' }),
|
|
||||||
change:(tag:any , org:any)=>{
|
|
||||||
if(tag.includes("999")){
|
|
||||||
this.sf4.setValue('/carModel',["999"]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
carLength: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'select',
|
|
||||||
mode: 'multiple',
|
|
||||||
maxMultipleCount:3,
|
|
||||||
placeholder: '请选择车长',
|
|
||||||
errors: { required: '请选择车长' },
|
|
||||||
asyncData: () => this.service.getDictOptions({ dictKey: 'car:length' }),
|
|
||||||
change:(tag:any , org:any)=>{
|
|
||||||
if(tag.includes("999")){
|
|
||||||
this.sf4.setValue('/carModel',["999"]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
required: ['weight', 'carModel', 'carLength']
|
|
||||||
};
|
|
||||||
this.ui4 = {
|
|
||||||
'*': {
|
|
||||||
spanLabelFixed: 90,
|
|
||||||
grid: { span: 24 }
|
|
||||||
},
|
|
||||||
$weight: {
|
|
||||||
grid: { lg: 8, md: 12, sm: 12, xs: 24 }
|
|
||||||
},
|
|
||||||
$volume: {
|
|
||||||
grid: { lg: 8, md: 12, sm: 12, xs: 24 }
|
|
||||||
},
|
|
||||||
$number: {
|
|
||||||
grid: { lg: 8, md: 12, sm: 12, xs: 24 }
|
|
||||||
},
|
|
||||||
$carModel: {
|
|
||||||
spanLabelFixed: 100,
|
|
||||||
grid: { span: 8 }
|
|
||||||
},
|
|
||||||
$carLength: {
|
|
||||||
grid: { span: 8 }
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
changeGoodsType(value: string, data: any) {
|
changeGoodsType(value: string, data: any) {
|
||||||
if (data.label === '其它') return;
|
if (data.label === '其它') return;
|
||||||
const params = {
|
const params = {
|
||||||
@ -745,165 +654,143 @@ changeGoodsType(value: string, data: any) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// initSF4() {
|
initSF4() {
|
||||||
// this.schema4 = {
|
this.schema4 = {
|
||||||
// properties: {
|
properties: {
|
||||||
// weight: {
|
weight: {
|
||||||
// type: 'string',
|
type: 'string',
|
||||||
// title: '货物数量',
|
title: '货物数量',
|
||||||
// ui: {
|
ui: {
|
||||||
// widget: 'custom',
|
widget: 'custom',
|
||||||
// placeholder: '请输入',
|
placeholder: '请输入',
|
||||||
// errors: { required: '必填项' }
|
errors: { required: '必填项' }
|
||||||
// }
|
}
|
||||||
// },
|
},
|
||||||
// volume: {
|
carmand: {
|
||||||
// type: 'string',
|
type: 'string',
|
||||||
// title: '',
|
title: '用车需求',
|
||||||
// ui: {
|
ui: {
|
||||||
// widget: 'custom',
|
widget: 'custom',
|
||||||
// placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
// }
|
}
|
||||||
// },
|
},
|
||||||
// number: {
|
drivers: {
|
||||||
// type: 'string',
|
type: 'string',
|
||||||
// title: '',
|
title: '承运司机',
|
||||||
// ui: {
|
ui: {
|
||||||
// widget: 'custom',
|
widget: 'custom',
|
||||||
// placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
// }
|
}
|
||||||
// },
|
},
|
||||||
// carmand: {
|
weightModel: {
|
||||||
// type: 'string',
|
type: 'string',
|
||||||
// title: '用车需求',
|
title: '车型车长承重',
|
||||||
// ui: {
|
ui: {
|
||||||
// widget: 'custom',
|
widget: 'custom',
|
||||||
// placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
// }
|
}
|
||||||
// },
|
},
|
||||||
// drivers: {
|
loadTime: {
|
||||||
// type: 'string',
|
type: 'string',
|
||||||
// title: '承运司机',
|
title: '发车时间',
|
||||||
// ui: {
|
ui: {
|
||||||
// widget: 'custom',
|
widget: 'custom',
|
||||||
// placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
// }
|
}
|
||||||
// },
|
},
|
||||||
// weightModel: {
|
unloadTime: {
|
||||||
// type: 'string',
|
type: 'string',
|
||||||
// title: '车型车长承重',
|
title: '到车时间',
|
||||||
// ui: {
|
ui: {
|
||||||
// widget: 'custom',
|
widget: 'custom',
|
||||||
// placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
// }
|
}
|
||||||
// },
|
},
|
||||||
// loadTime: {
|
acceptWeight: {
|
||||||
// type: 'string',
|
type: 'number',
|
||||||
// title: '发车时间',
|
title: '装货重量',
|
||||||
// ui: {
|
minimum:0,
|
||||||
// widget: 'custom',
|
maximum:99999,
|
||||||
// placeholder: '请输入'
|
ui: {
|
||||||
// }
|
unit: '吨',
|
||||||
// },
|
placeholder: '请输入',
|
||||||
// unloadTime: {
|
grid: {
|
||||||
// type: 'string',
|
span: 12
|
||||||
// title: '到车时间',
|
},
|
||||||
// ui: {
|
hideStep: true,
|
||||||
// widget: 'custom',
|
} as SFNumberWidgetSchema
|
||||||
// placeholder: '请输入'
|
},
|
||||||
// }
|
acceptVolume: {
|
||||||
// },
|
type: 'number',
|
||||||
// acceptWeight: {
|
title: '装货体积',
|
||||||
// type: 'number',
|
minimum:0,
|
||||||
// title: '装货重量',
|
maximum:99999,
|
||||||
// minimum:0,
|
ui: {
|
||||||
// maximum:99999,
|
unit: '吨',
|
||||||
// ui: {
|
placeholder: '请输入',
|
||||||
// unit: '吨',
|
grid: {
|
||||||
// placeholder: '请输入',
|
span: 12
|
||||||
// grid: {
|
},
|
||||||
// span: 12
|
hideStep: true,
|
||||||
// },
|
} as SFNumberWidgetSchema
|
||||||
// hideStep: true,
|
},
|
||||||
// } as SFNumberWidgetSchema
|
settlementWeight: {
|
||||||
// },
|
type: 'number',
|
||||||
// acceptVolume: {
|
title: '卸货重量',
|
||||||
// type: 'number',
|
minimum:0,
|
||||||
// title: '装货体积',
|
maximum:99999,
|
||||||
// minimum:0,
|
ui: {
|
||||||
// maximum:99999,
|
unit: '吨',
|
||||||
// ui: {
|
placeholder: '请输入',
|
||||||
// unit: '吨',
|
grid: {
|
||||||
// placeholder: '请输入',
|
span: 12
|
||||||
// grid: {
|
},
|
||||||
// span: 12
|
hideStep: true,
|
||||||
// },
|
} as SFNumberWidgetSchema
|
||||||
// hideStep: true,
|
},
|
||||||
// } as SFNumberWidgetSchema
|
settlementVolume: {
|
||||||
// },
|
type: 'number',
|
||||||
// settlementWeight: {
|
title: '卸货体积',
|
||||||
// type: 'number',
|
minimum:0,
|
||||||
// title: '卸货重量',
|
maximum:99999,
|
||||||
// minimum:0,
|
ui: {
|
||||||
// maximum:99999,
|
unit: '吨',
|
||||||
// ui: {
|
placeholder: '请输入',
|
||||||
// unit: '吨',
|
grid: {
|
||||||
// placeholder: '请输入',
|
span: 12
|
||||||
// grid: {
|
},
|
||||||
// span: 12
|
hideStep: true,
|
||||||
// },
|
} as SFNumberWidgetSchema
|
||||||
// hideStep: true,
|
}
|
||||||
// } as SFNumberWidgetSchema
|
},
|
||||||
// },
|
required: ['loadTime','unloadTime']
|
||||||
// settlementVolume: {
|
};
|
||||||
// type: 'number',
|
this.ui4 = {
|
||||||
// title: '卸货体积',
|
'*': {
|
||||||
// minimum:0,
|
spanLabelFixed: 90,
|
||||||
// maximum:99999,
|
grid: { span: 24 }
|
||||||
// ui: {
|
},
|
||||||
// unit: '吨',
|
$weight: {
|
||||||
// placeholder: '请输入',
|
grid: { span: 24 }
|
||||||
// grid: {
|
},
|
||||||
// span: 12
|
$carmand: {
|
||||||
// },
|
grid: { span: 24 }
|
||||||
// hideStep: true,
|
},
|
||||||
// } as SFNumberWidgetSchema
|
$weightModel: {
|
||||||
// }
|
spanLabelFixed: 120,
|
||||||
// },
|
grid: { span: 12 }
|
||||||
// required: ['weight','loadTime','unloadTime']
|
},
|
||||||
// };
|
$drivers: {
|
||||||
// this.ui4 = {
|
grid: { span: 12 }
|
||||||
// '*': {
|
},
|
||||||
// spanLabelFixed: 90,
|
$loadTime: {
|
||||||
// grid: { span: 24 }
|
grid: { span: 12 }
|
||||||
// },
|
},
|
||||||
// $weight: {
|
$unloadTime: {
|
||||||
// grid: { span: 8 }
|
grid: { span: 12 }
|
||||||
// },
|
},
|
||||||
// $volume: {
|
};
|
||||||
// grid: { span: 8 }
|
}
|
||||||
// },
|
|
||||||
// $number: {
|
|
||||||
// grid: { span: 8 }
|
|
||||||
// },
|
|
||||||
// $carmand: {
|
|
||||||
// grid: { span: 24 }
|
|
||||||
// },
|
|
||||||
// $weightModel: {
|
|
||||||
// spanLabelFixed: 120,
|
|
||||||
// grid: { span: 12 }
|
|
||||||
// },
|
|
||||||
// $drivers: {
|
|
||||||
// grid: { span: 12 }
|
|
||||||
// },
|
|
||||||
// $loadTime: {
|
|
||||||
// grid: { span: 12 }
|
|
||||||
// },
|
|
||||||
// $unloadTime: {
|
|
||||||
// grid: { span: 12 }
|
|
||||||
// },
|
|
||||||
// };
|
|
||||||
// }
|
|
||||||
// 处理上传图片
|
// 处理上传图片
|
||||||
handlePreview1 = async (file: NzUploadFile) => {
|
handlePreview1 = async (file: NzUploadFile) => {
|
||||||
if (!file.url && !file.preview) {
|
if (!file.url && !file.preview) {
|
||||||
@ -970,4 +857,51 @@ goDistance(elf: NzCardComponent) {
|
|||||||
elf['elementRef'].nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'start' });
|
elf['elementRef'].nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start', inline: 'start' });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 装卸货地址互换
|
||||||
|
swapAddress() {
|
||||||
|
let item = this.startInfo;
|
||||||
|
this.startInfo = this.endInfo;
|
||||||
|
this.endInfo = item;
|
||||||
|
|
||||||
|
this.startInfo.forEach((element: any) => {
|
||||||
|
element.type = '1';
|
||||||
|
});
|
||||||
|
this.endInfo.forEach((element: any) => {
|
||||||
|
element.type = '2';
|
||||||
|
});
|
||||||
|
|
||||||
|
// 计算里程,时间
|
||||||
|
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
||||||
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
||||||
|
this.totalDistance = res.distance;
|
||||||
|
this.totalTime = res.time;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 获取轨迹
|
||||||
|
MapInit() {
|
||||||
|
this.service.request(this.service.$api_get_getTrajectory, { id: this.id }).subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
const points = res.trackArray;
|
||||||
|
let list :any[] = [];
|
||||||
|
points?.forEach((item: any) => {
|
||||||
|
list.push({
|
||||||
|
name: item.hgt,
|
||||||
|
lnglat: [Number((Number(item.lon) / 600000).toFixed(6)), Number((Number(item.lat) / 600000).toFixed(6))]
|
||||||
|
});
|
||||||
|
});
|
||||||
|
this.MapList = list;
|
||||||
|
this.addressItems = res.parkArray;
|
||||||
|
if(this.addressItems && this.addressItems.length > 0){
|
||||||
|
this.addressItems.forEach(item => {
|
||||||
|
item.vinOutTime = this.getLocalTime(item.vinOutTime);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
getLocalTime(time: any) {
|
||||||
|
return format(new Date(parseInt(time)), 'yyyy-MM-dd HH:mm:ss');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-06 20:20:26
|
* @Date : 2021-12-06 20:20:26
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-02 11:14:37
|
* @LastEditTime : 2022-03-04 14:07:44
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail\\bulk-detail.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail\\bulk-detail.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -44,7 +44,7 @@
|
|||||||
<sv label="货主">{{ i?.goodsResource?.shipperAppUserName }} </sv>
|
<sv label="货主">{{ i?.goodsResource?.shipperAppUserName }} </sv>
|
||||||
<sv label="所属项目">{{ i?.goodsResource?.enterpriseProjectName }}</sv>
|
<sv label="所属项目">{{ i?.goodsResource?.enterpriseProjectName }}</sv>
|
||||||
<sv label="服务类型">{{ i?.goodsResource?.serviceTypeLabel }}</sv>
|
<sv label="服务类型">{{ i?.goodsResource?.serviceTypeLabel }}</sv>
|
||||||
<sv label="录单员">{{ i?.goodsResource?.createUserName }} /{{ i?.goodsResource?.createUserPhone }} </sv>
|
<sv label="录单员">{{ i?.createUserName }} /{{ i?.createUserPhone }} </sv>
|
||||||
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
<sv label="调度员">{{ i?.goodsResource?.dispatchName }}/{{ i?.goodsResource?.dispatchPhone }} </sv>
|
||||||
</div>
|
</div>
|
||||||
<nz-tabset style="margin-top: 15px">
|
<nz-tabset style="margin-top: 15px">
|
||||||
@ -90,7 +90,7 @@
|
|||||||
<sv label="计划卸货时间">
|
<sv label="计划卸货时间">
|
||||||
{{ i?.unloadPlanTime }}
|
{{ i?.unloadPlanTime }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="接单数量"> {{ i?.acceptWeight }}吨,{{ i?.acceptVolume }}方,{{ i?.acceptNumber }}件 </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?.acceptWeight }}吨,{{ i?.acceptVolume }}方,{{ i?.acceptNumber }}件 </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 }}方,{{ i?.acceptNumber }}件 </sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
@ -135,7 +135,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card nzTitle="运费信息" #distannce3>
|
<nz-card nzTitle="运费信息" #distannce3>
|
||||||
<h2>{{i?.goodsInfoList?.[0]?.freightPrice}}{{i?.goodsInfoList?.[0]?.freightTypeLabel}}(以发货为准,保留小数)</h2>
|
<div *ngIf="(i?.billStatus == '3' && i.goodsInfoList?.[0].settlementBasis == '2') || (i?.billStatus == '4' && i.goodsInfoList?.[0].settlementBasis == '1')" >
|
||||||
|
<h2>{{i?.goodsInfoList?.[0]?.freightPrice}}{{i?.goodsInfoList?.[0]?.freightTypeLabel}}({{ i?.goodsInfoList?.[0]?.settlementBasisLabel ? i?.goodsInfoList?.[0]?.settlementBasisLabel + ',' :' ' }}{{i?.goodsInfoList?.[0]?.ruleLabel}})</h2>
|
||||||
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
<st #st [data]="billExpenses" [columns]="logColumns" [ps]="0" [page]="{ show: false, showSize: false }">
|
||||||
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
|
<ng-template st-row="PriceType" let-item let-index="index"> 到付 </ng-template>
|
||||||
<ng-template st-row="price" let-item let-index="index">
|
<ng-template st-row="price" let-item let-index="index">
|
||||||
@ -152,6 +153,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div>收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}</div>
|
<div>收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}</div>
|
||||||
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<nz-card nzTitle="附件信息" #distannce4>
|
<nz-card nzTitle="附件信息" #distannce4>
|
||||||
@ -164,10 +166,10 @@
|
|||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2" class="mt-md">
|
<sv-container col="2" class="mt-md">
|
||||||
<sv label="装货凭证">
|
<sv label="装货凭证">
|
||||||
<app-imagelist [imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
|
<app-imagelist *ngIf="i?.loadingLadingBillFilePath || i?.loadingPeopleVehiclesGoodsFilePath" [imgList]="[i?.loadingLadingBillFilePath, i?.loadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="卸货凭证">
|
<sv label="卸货凭证">
|
||||||
<app-imagelist [imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
|
<app-imagelist *ngIf="i?.unloadingLadingBillFilePath || i?.unloadingPeopleVehiclesGoodsFilePath " [imgList]="[i?.unloadingLadingBillFilePath, i?.unloadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|||||||
@ -34,23 +34,8 @@ export class OrderManagementBulkeDetailComponent implements OnInit {
|
|||||||
attObj: any;
|
attObj: any;
|
||||||
isVisible = false;
|
isVisible = false;
|
||||||
logColumns: STColumn[] = [
|
logColumns: STColumn[] = [
|
||||||
{ title: '款项', index: 'costName', render: 'PriceType' },
|
{ title: '时间', index: 'vinOutTime' },
|
||||||
{ title: '运输费(元)', render: 'price' },
|
{ title: '地点', index: 'cityName' },
|
||||||
{ title: '附加费(元)', render: 'surcharge' },
|
|
||||||
{ title: '支付时间', index: 'paymentTime' },
|
|
||||||
{
|
|
||||||
title: '支付状态',
|
|
||||||
className: 'text-center',
|
|
||||||
index: 'paymentStatus',
|
|
||||||
type: 'badge',
|
|
||||||
width: '120px',
|
|
||||||
badge: {
|
|
||||||
'1': { text: '待申请', color: 'warning' },
|
|
||||||
'2': { text: '已支付', color: 'success' },
|
|
||||||
'3': { text: '已拒绝', color: 'warning' },
|
|
||||||
'4': { text: '申请中', color: 'warning' }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
trajectory = 'car';
|
trajectory = 'car';
|
||||||
addressItems: any[] = []; //打点地址数据组
|
addressItems: any[] = []; //打点地址数据组
|
||||||
@ -71,9 +56,7 @@ export class OrderManagementBulkeDetailComponent implements OnInit {
|
|||||||
this.service.request(this.service.$api_getBulkBillDetail, { id: this.id }).subscribe(res => {
|
this.service.request(this.service.$api_getBulkBillDetail, { id: this.id }).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.i = res;
|
this.i = res;
|
||||||
console.log(this.i.billExpenseDetails )
|
|
||||||
this.billExpenses = this.i?.billExpenseDetails?.filter((data: any) => data.expenseCode === 'TRA');
|
this.billExpenses = this.i?.billExpenseDetails?.filter((data: any) => data.expenseCode === 'TRA');
|
||||||
console.log(this.billExpenses )
|
|
||||||
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data:any)=>data.displayStatus !=="HIDE");
|
this.i.scheduleVOList = this.i?.scheduleVOList?.filter((data:any)=>data.displayStatus !=="HIDE");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@ -690,7 +690,7 @@ export class OrderManagementBulkComponent implements OnInit {
|
|||||||
};
|
};
|
||||||
const params2 = {
|
const params2 = {
|
||||||
businessCode: item.billCode,
|
businessCode: item.billCode,
|
||||||
passiveUserId: item.shipperAppUserId
|
evaluateUserId: item.shipperAppUserId
|
||||||
};
|
};
|
||||||
this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => {
|
this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => {
|
||||||
console.log(res);
|
console.log(res);
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-23 13:39:58
|
* @Date : 2021-12-23 13:39:58
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-01 13:41:57
|
* @LastEditTime : 2022-03-04 10:42:33
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail-change\\vehicle-detail-change.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail-change\\vehicle-detail-change.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -75,15 +75,12 @@
|
|||||||
<input
|
<input
|
||||||
nz-input
|
nz-input
|
||||||
[(ngModel)]="data1.detailedAddress"
|
[(ngModel)]="data1.detailedAddress"
|
||||||
(click)="openMap('start', idx)"
|
(click)="openMap('start', idx,data1.detailedAddress)"
|
||||||
formControlName="loadAddress{{ idx }}"
|
formControlName="loadAddress{{ idx }}"
|
||||||
placeholder="请输入装货地"
|
placeholder="请输入装货地"
|
||||||
readonly="true"
|
readonly="true"
|
||||||
/>
|
/>
|
||||||
</nz-input-group>
|
</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>
|
</div>
|
||||||
</nz-form-control>
|
</nz-form-control>
|
||||||
</nz-form-item>
|
</nz-form-item>
|
||||||
@ -115,7 +112,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="4">
|
<div nz-col [nzSpan]="4">
|
||||||
<div style="display: flex; justify-content: center">
|
<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 class="swap-icon" (click)="swapAddress()"><i nz-icon nzType="swap"
|
||||||
|
nzTheme="outline"></i></span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="10">
|
<div nz-col [nzSpan]="10">
|
||||||
@ -128,7 +126,7 @@
|
|||||||
<input
|
<input
|
||||||
nz-input
|
nz-input
|
||||||
[(ngModel)]="data2.detailedAddress"
|
[(ngModel)]="data2.detailedAddress"
|
||||||
(click)="openMap('end', idx)"
|
(click)="openMap('end', idx,data2.detailedAddress)"
|
||||||
formControlName="unloadAddress{{ idx }}"
|
formControlName="unloadAddress{{ idx }}"
|
||||||
placeholder="请输入卸货地"
|
placeholder="请输入卸货地"
|
||||||
readonly="true"
|
readonly="true"
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-23 13:39:58
|
* @Date : 2021-12-23 13:39:58
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-28 11:53:31
|
* @LastEditTime : 2022-03-04 10:48:50
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail-change\\vehicle-detail-change.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail-change\\vehicle-detail-change.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -14,7 +14,7 @@ import { ActivatedRoute, Router } from '@angular/router';
|
|||||||
import { apiConf } from '@conf/api.conf';
|
import { apiConf } from '@conf/api.conf';
|
||||||
import { STColumn, STComponent } from '@delon/abc/st';
|
import { STColumn, STComponent } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFSelectWidgetSchema, SFUISchema, SFUploadWidgetSchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFSelectWidgetSchema, SFUISchema, SFUploadWidgetSchema } from '@delon/form';
|
||||||
import { AmapPoiPickerComponent, AmapService, EAEnvironmentService, ShipperBaseService } from '@shared';
|
import { AmapPoiPickerComponent, AmapService, EACacheService, EAEnvironmentService, ShipperBaseService } from '@shared';
|
||||||
import { NzCardComponent } from 'ng-zorro-antd/card';
|
import { NzCardComponent } from 'ng-zorro-antd/card';
|
||||||
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';
|
||||||
@ -443,6 +443,13 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
|
|||||||
this.loadTime = res.loadTime;
|
this.loadTime = res.loadTime;
|
||||||
this.unloadTime = res.unloadTime;
|
this.unloadTime = res.unloadTime;
|
||||||
this.dirvingMessage = res.billExpenseDetails;
|
this.dirvingMessage = res.billExpenseDetails;
|
||||||
|
// 计算里程,时间
|
||||||
|
if (this.startInfo?.[0]?.area && this.endInfo?.[0]?.area) {
|
||||||
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
||||||
|
this.totalDistance = res.distance;
|
||||||
|
this.totalTime = res.time;
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -553,32 +560,36 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
// -------------------装卸货信息处理
|
// -------------------装卸货信息处理
|
||||||
// 打开地图
|
// 打开地图
|
||||||
openMap(type: string, index: number) {
|
openMap(type: string, index: number, address: string) {
|
||||||
|
console.log(type);
|
||||||
|
console.log(index);
|
||||||
|
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
nzTitle: '',
|
nzTitle: '',
|
||||||
|
nzComponentParams: { selectedAddress: address },
|
||||||
nzContent: AmapPoiPickerComponent,
|
nzContent: AmapPoiPickerComponent,
|
||||||
nzWidth: 900,
|
nzWidth: 900,
|
||||||
nzOnOk: item => {
|
nzOnOk: item => {
|
||||||
const poi = item.poi;
|
const poi = item.poi;
|
||||||
const locList = poi.location.toString().split(',');
|
const locList = poi.pois;
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case 'start':
|
case 'start':
|
||||||
this.startInfo[index].detailedAddress = poi.district + poi.name;
|
this.startInfo[index].detailedAddress = poi.formattedAddress;
|
||||||
this.startInfo[index].longitude = locList[0];
|
this.startInfo[index].longitude = locList[0];
|
||||||
this.startInfo[index].latitude = locList[1];
|
this.startInfo[index].latitude = locList[1];
|
||||||
this.startInfo[index].province = poi.cityInfo.province;
|
this.startInfo[index].province = poi.addressComponent.province;
|
||||||
this.startInfo[index].city = poi.cityInfo.city;
|
this.startInfo[index].city = poi.addressComponent.city;
|
||||||
this.startInfo[index].area = poi.cityInfo.district;
|
this.startInfo[index].area = poi.addressComponent.district;
|
||||||
this.startInfo[index].address = poi.name;
|
this.startInfo[index].address = poi.formattedAddress;
|
||||||
break;
|
break;
|
||||||
case 'end':
|
case 'end':
|
||||||
this.endInfo[index].detailedAddress = poi.district + poi.name;
|
this.endInfo[index].detailedAddress = poi.formattedAddress;
|
||||||
this.endInfo[index].longitude = locList[0];
|
this.endInfo[index].longitude = locList[0];
|
||||||
this.endInfo[index].latitude = locList[1];
|
this.endInfo[index].latitude = locList[1];
|
||||||
this.endInfo[index].province = poi.cityInfo.province;
|
this.endInfo[index].province = poi.addressComponent.province;
|
||||||
this.endInfo[index].city = poi.cityInfo.city;
|
this.endInfo[index].city = poi.addressComponent.city;
|
||||||
this.endInfo[index].area = poi.cityInfo.district;
|
this.endInfo[index].area = poi.addressComponent.district;
|
||||||
this.endInfo[index].address = poi.name;
|
this.endInfo[index].address = poi.formattedAddress;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -593,7 +604,6 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
initSF3() {
|
initSF3() {
|
||||||
this.schema3 = {
|
this.schema3 = {
|
||||||
properties: {
|
properties: {
|
||||||
@ -874,4 +884,41 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
console.log(elf);
|
console.log(elf);
|
||||||
}
|
}
|
||||||
|
// 装卸货地址互换
|
||||||
|
swapAddress() {
|
||||||
|
this.startInfo.forEach((element: any, index: any) => {
|
||||||
|
this.validateForm1.removeControl(`loadAddress${index}`);
|
||||||
|
this.validateForm1.removeControl(`loadName${index}`);
|
||||||
|
this.validateForm1.removeControl(`loadPhone${index}`);
|
||||||
|
});
|
||||||
|
this.endInfo.forEach((element: any, index: any) => {
|
||||||
|
this.validateForm1.removeControl(`unloadAddress${index}`);
|
||||||
|
this.validateForm1.removeControl(`unloadName${index}`);
|
||||||
|
this.validateForm1.removeControl(`unloadPhone${index}`);
|
||||||
|
});
|
||||||
|
|
||||||
|
let item = this.startInfo;
|
||||||
|
this.startInfo = this.endInfo;
|
||||||
|
this.endInfo = item;
|
||||||
|
|
||||||
|
this.startInfo.forEach((element: any, index: any) => {
|
||||||
|
element.type = '1';
|
||||||
|
this.validateForm1.addControl(`loadAddress${index}`, new FormControl(null, Validators.required));
|
||||||
|
this.validateForm1.addControl(`loadName${index}`, new FormControl(null, Validators.required));
|
||||||
|
this.validateForm1.addControl(`loadPhone${index}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
||||||
|
});
|
||||||
|
this.endInfo.forEach((element: any, index: any) => {
|
||||||
|
element.type = '2';
|
||||||
|
this.validateForm1.addControl(`unloadAddress${index}`, new FormControl(null, Validators.required));
|
||||||
|
this.validateForm1.addControl(`unloadName${index}`, new FormControl(null, Validators.required));
|
||||||
|
this.validateForm1.addControl(`unloadPhone${index}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
||||||
|
});
|
||||||
|
// 计算里程,时间
|
||||||
|
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
||||||
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
||||||
|
this.totalDistance = res.distance;
|
||||||
|
this.totalTime = res.time;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -664,7 +664,7 @@ resourceStatus: any;
|
|||||||
}
|
}
|
||||||
const params2 = {
|
const params2 = {
|
||||||
businessCode: item.billCode,
|
businessCode: item.billCode,
|
||||||
passiveUserId: item.shipperAppUserId,
|
evaluateUserId: item.shipperAppUserId,
|
||||||
}
|
}
|
||||||
this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => {
|
this.service.request(this.service.$api_getBillEvaluateByShipper, params).subscribe(res => {
|
||||||
console.log(res)
|
console.log(res)
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-14 15:02:52
|
* @Date : 2021-12-14 15:02:52
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-02 13:43:55
|
* @LastEditTime : 2022-03-04 09:38:45
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\bulk\\confir-receipt\\confir-receipt.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\bulk\\confir-receipt\\confir-receipt.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -34,18 +34,18 @@ nzMessage="签收后不可再修改运费,请确保运费等信息准确无误
|
|||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2">
|
<sv-container col="2">
|
||||||
<sv label="装货重量">
|
<sv label="装货重量">
|
||||||
<div>{{detailList?.goodsInfoVO?.weight}}吨</div>
|
<div>{{ detailList?.loadWeight }}吨</div>
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="装货体积">
|
<sv label="装货体积">
|
||||||
<div>{{detailList?.goodsInfoVO?.volume}}方</div>
|
<div>{{ detailList?.loadVolume }}方</div>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="2">
|
<sv-container col="2" >
|
||||||
<sv label="卸货重量">
|
<sv label="卸货重量">
|
||||||
<div>{{detailList?.goodsInfoVO?.volume}}吨</div>
|
<div>{{ detailList?.settlementWeight }}吨</div>
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="卸货体积">
|
<sv label="卸货体积">
|
||||||
<div>{{detailList?.settlementVolume}}方</div>
|
<div>{{ detailList?.settlementVolume }}方</div>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<sv-container col="1">
|
<sv-container col="1">
|
||||||
|
|||||||
@ -10,6 +10,16 @@
|
|||||||
-->
|
-->
|
||||||
<nz-alert nzType="info" [nzMessage]="'已选择'+ data?.ids?.length + '条订单'" nzShowIcon></nz-alert>
|
<nz-alert nzType="info" [nzMessage]="'已选择'+ data?.ids?.length + '条订单'" nzShowIcon></nz-alert>
|
||||||
<sf style="margin-top: 15px" #sf mode="edit" [schema]="schema" [ui]="ui" button="none"></sf>
|
<sf style="margin-top: 15px" #sf mode="edit" [schema]="schema" [ui]="ui" button="none"></sf>
|
||||||
|
|
||||||
|
<st #st [data]="service.$api_getChangeRecordWholeDetail" [columns]="columns"
|
||||||
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams}"
|
||||||
|
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
|
||||||
|
[page]="{}"
|
||||||
|
>
|
||||||
|
<ng-template st-row="operator" let-item>
|
||||||
|
{{item?.operator}}/{{item.telephone}}
|
||||||
|
</ng-template>
|
||||||
|
</st>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button nz-button type="button" (click)="close()">关闭</button>
|
<button nz-button type="button" (click)="close()">关闭</button>
|
||||||
<button nz-button type="submit" nzType="primary" (click)="save(sf.value)">确定</button>
|
<button nz-button type="submit" nzType="primary" (click)="save(sf.value)">确定</button>
|
||||||
|
|||||||
@ -4,12 +4,13 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-29 14:51:07
|
* @Date : 2021-12-29 14:51:07
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-24 11:10:33
|
* @LastEditTime : 2022-03-04 14:45:58
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\modify-rate\\modify-rate.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\modify-rate\\modify-rate.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, Input, OnInit, ViewChild } from '@angular/core';
|
import { Component, Input, OnInit, ViewChild } from '@angular/core';
|
||||||
|
import { STColumn } from '@delon/abc/st';
|
||||||
import { SFComponent, SFNumberWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFNumberWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
@ -24,7 +25,11 @@ export class VehicleModifyRateComponent implements OnInit {
|
|||||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
ui: SFUISchema = {};
|
ui: SFUISchema = {};
|
||||||
|
columns: STColumn[] = [
|
||||||
|
{ title: '内容', index: 'operationContent' },
|
||||||
|
{ title: '操作人', index: 'operator' },
|
||||||
|
{ title: '操作时间', index: 'operatorTimestamp' },
|
||||||
|
];
|
||||||
aggreechecked = false;
|
aggreechecked = false;
|
||||||
|
|
||||||
@Input()
|
@Input()
|
||||||
@ -36,6 +41,12 @@ export class VehicleModifyRateComponent implements OnInit {
|
|||||||
console.log(this.data);
|
console.log(this.data);
|
||||||
this.initSF();
|
this.initSF();
|
||||||
}
|
}
|
||||||
|
get reqParams() {
|
||||||
|
return {
|
||||||
|
// operateObject: this.i?.resourceCode,
|
||||||
|
// operateType: 4,
|
||||||
|
};
|
||||||
|
}
|
||||||
initSF() {
|
initSF() {
|
||||||
this.schema = {
|
this.schema = {
|
||||||
properties: {
|
properties: {
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-15 13:17:42
|
* @Date : 2021-12-15 13:17:42
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-01-18 17:23:52
|
* @LastEditTime : 2022-03-04 09:48:12
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\sure-arrive\\sure-arrive.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\sure-arrive\\sure-arrive.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -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]="10" [nzStep]="1"></nz-input-number>
|
<nz-input-number [(ngModel)]="data.weight" [nzMin]="1" [nzMax]="999" [nzStep]="1"></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]="10" [nzStep]="1"></nz-input-number>
|
<nz-input-number [(ngModel)]="data.volume" [nzMin]="1" [nzMax]="999" [nzStep]="1"></nz-input-number>
|
||||||
<div class="left_btn">方</div>
|
<div class="left_btn">方</div>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -44,7 +44,7 @@ export class VehicleSureArriveComponent implements OnInit {
|
|||||||
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() {
|
||||||
@ -407,7 +407,7 @@ export class VehicleSureArriveComponent implements OnInit {
|
|||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['time', 'weight' ]
|
required: ['time' ]
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
this.ui = {
|
this.ui = {
|
||||||
@ -429,9 +429,9 @@ export class VehicleSureArriveComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
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) => {
|
this.service.request(this.service.$api_get_insertWholeUnloadCarInfo, params).subscribe((res) => {
|
||||||
@ -441,22 +441,19 @@ export class VehicleSureArriveComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
if(!value.time || !this.data.weight) {
|
if(!value.time ) {
|
||||||
this.service.msgSrv.warning('必填项为空!')
|
this.service.msgSrv.warning('必填项为空!')
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
console.log(value)
|
|
||||||
console.log(this.i)
|
|
||||||
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,
|
||||||
volume: this.data.volume,
|
volume: this.data?.volume,
|
||||||
weight: this.data.weight
|
weight: this.data?.weight
|
||||||
}
|
}
|
||||||
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 ')
|
||||||
console.log(params)
|
|
||||||
this.service.request(this.service.$api_get_insertBulkUnloadCarInfo, params).subscribe((res) => {
|
this.service.request(this.service.$api_get_insertBulkUnloadCarInfo, params).subscribe((res) => {
|
||||||
if(res) {
|
if(res) {
|
||||||
this.service.msgSrv.success('确认到车成功!')
|
this.service.msgSrv.success('确认到车成功!')
|
||||||
|
|||||||
@ -99,7 +99,6 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card',
|
||||||
showRequired: true,
|
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema,
|
||||||
},
|
},
|
||||||
imgUrl2: {
|
imgUrl2: {
|
||||||
@ -138,11 +137,10 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card',
|
||||||
showRequired: true,
|
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['reason']
|
required: ['time']
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
this.schema = {
|
this.schema = {
|
||||||
@ -210,7 +208,6 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card',
|
||||||
showRequired: true,
|
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema,
|
||||||
},
|
},
|
||||||
imgUrl2: {
|
imgUrl2: {
|
||||||
@ -249,11 +246,10 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
multiple: false,
|
multiple: false,
|
||||||
listType: 'picture-card',
|
listType: 'picture-card',
|
||||||
showRequired: true,
|
|
||||||
} as SFUploadWidgetSchema,
|
} as SFUploadWidgetSchema,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['time', 'weight']
|
required: ['time']
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -268,15 +264,15 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
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_insertWholeStartCarInfo, params).subscribe((res) => {
|
this.service.request(this.service.$api_get_insertWholeStartCarInfo, params).subscribe((res) => {
|
||||||
@ -286,18 +282,18 @@ export class VehicleSureDepartComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
if(!value.time || !this.data.weight) {
|
if(!value?.time) {
|
||||||
this.service.msgSrv.warning('必填项为空!')
|
this.service.msgSrv.warning('必填项为空!')
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
console.log(value)
|
console.log(value)
|
||||||
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,
|
||||||
volume: this.data.volume,
|
volume: this.data?.volume,
|
||||||
weight: this.data.weight
|
weight: this.data?.weight
|
||||||
}
|
}
|
||||||
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_insertBulkStartCarInfo, params).subscribe((res) => {
|
this.service.request(this.service.$api_get_insertBulkStartCarInfo, params).subscribe((res) => {
|
||||||
|
|||||||
@ -144,30 +144,30 @@ export class SupplyManagementBulkAssignedCarComponent implements OnInit {
|
|||||||
title: '司机姓名',
|
title: '司机姓名',
|
||||||
index: 'name',
|
index: 'name',
|
||||||
className: 'text-center',
|
className: 'text-center',
|
||||||
width: '80px'
|
width: '20%'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '手机号',
|
title: '手机号',
|
||||||
index: 'telephone',
|
index: 'telephone',
|
||||||
className: 'text-center',
|
className: 'text-center',
|
||||||
width: '100px'
|
width: '15%'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '车队长',
|
title: '车队长',
|
||||||
render: 'captain',
|
render: 'captain',
|
||||||
className: 'text-center',
|
className: 'text-center',
|
||||||
width: '200px'
|
width: '30%'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '指定车辆',
|
title: '指定车辆',
|
||||||
render: 'carNo',
|
render: 'carNo',
|
||||||
className: 'text-center',
|
className: 'text-center',
|
||||||
width: '100px'
|
width: '15%'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '操作',
|
title: '操作',
|
||||||
className: 'text-center',
|
className: 'text-center',
|
||||||
width: '80px',
|
width: '20%',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '移除',
|
text: '移除',
|
||||||
|
|||||||
@ -171,7 +171,7 @@
|
|||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card nzTitle="操作日志">
|
<nz-card nzTitle="操作日志">
|
||||||
<st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns"
|
<st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns"
|
||||||
[page]="{ show: false, showSize: false }"
|
[page]="{}"
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } }">
|
[res]="{ reName: { list: 'data.records', total: 'data.total' } }">
|
||||||
</st>
|
</st>
|
||||||
|
|||||||
@ -65,7 +65,7 @@ export class SupplyManagementBulkDetailComponent implements OnInit {
|
|||||||
get reqParams() {
|
get reqParams() {
|
||||||
return {
|
return {
|
||||||
operateObject: this.i?.resourceCode,
|
operateObject: this.i?.resourceCode,
|
||||||
operateType: 4,
|
operateTypeList: [4,7],
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
currentStatus = 0;
|
currentStatus = 0;
|
||||||
|
|||||||
@ -46,13 +46,14 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
startInfo: any = [];
|
startInfo: any = [];
|
||||||
endInfo: any = [];
|
endInfo: any = [];
|
||||||
PageStatus = '';
|
PageStatus = '';
|
||||||
|
shipperName = '';
|
||||||
limitValues = {
|
limitValues = {
|
||||||
maxMonth: 99,
|
maxMonth: 99,
|
||||||
maxWeight: 99999,
|
maxWeight: 99999,
|
||||||
maxVolume: 99999,
|
maxVolume: 99999,
|
||||||
maxTrainNumber: 99999,
|
maxTrainNumber: 99999,
|
||||||
maxFreight: 9999999
|
maxFreight: 9999999
|
||||||
}
|
};
|
||||||
constructor(
|
constructor(
|
||||||
private http: _HttpClient,
|
private http: _HttpClient,
|
||||||
fb: FormBuilder,
|
fb: FormBuilder,
|
||||||
@ -118,7 +119,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
searchDebounceTime: 300,
|
searchDebounceTime: 300,
|
||||||
searchLoadingText: '搜索中...',
|
searchLoadingText: '搜索中...',
|
||||||
onSearch: (q: any) => {
|
onSearch: (q: any) => {
|
||||||
let str =q.replace(/^\s+|\s+$/g,"");
|
let str = q.replace(/^\s+|\s+$/g, '');
|
||||||
if (str) {
|
if (str) {
|
||||||
return this.service
|
return this.service
|
||||||
.request(this.service.$api_enterpriceList, { enterpriseName: str })
|
.request(this.service.$api_enterpriceList, { enterpriseName: str })
|
||||||
@ -128,12 +129,13 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
return of([]);
|
return of([]);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
change: (q: any) => {
|
change: (q: any, qs: any) => {
|
||||||
let str =q.replace(/^\s+|\s+$/g,"");
|
let str = q.replace(/^\s+|\s+$/g, '');
|
||||||
if (str) {
|
if (str) {
|
||||||
this.getRegionCode(str);
|
this.getRegionCode(str);
|
||||||
|
this.shipperName = qs?.label;
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
} as SFSelectWidgetSchema
|
} as SFSelectWidgetSchema
|
||||||
},
|
},
|
||||||
enterpriseProjectId: {
|
enterpriseProjectId: {
|
||||||
@ -158,7 +160,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
placeholder: '请输入',
|
placeholder: '请输入',
|
||||||
format: 'yyyy-MM-dd HH:mm:ss',
|
format: 'yyyy-MM-dd HH:mm:ss',
|
||||||
validator: (val) => {
|
validator: val => {
|
||||||
let d = new Date();
|
let d = new Date();
|
||||||
let year = d.getFullYear();
|
let year = d.getFullYear();
|
||||||
let month = d.getMonth();
|
let month = d.getMonth();
|
||||||
@ -171,7 +173,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
return [{ keyword: 'validTime2', message: `有效期最长为${this.limitValues.maxMonth}个月` }];
|
return [{ keyword: 'validTime2', message: `有效期最长为${this.limitValues.maxMonth}个月` }];
|
||||||
}
|
}
|
||||||
return [];
|
return [];
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
dispatchPhone: {
|
dispatchPhone: {
|
||||||
@ -369,13 +371,13 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
mode: 'multiple',
|
mode: 'multiple',
|
||||||
maxMultipleCount:3,
|
maxMultipleCount: 3,
|
||||||
placeholder: '请选择车型',
|
placeholder: '请选择车型',
|
||||||
errors: { required: '请选择车型' },
|
errors: { required: '请选择车型' },
|
||||||
asyncData: () => this.service.getDictOptions({ dictKey: 'car:model' }),
|
asyncData: () => this.service.getDictOptions({ dictKey: 'car:model' }),
|
||||||
change:(tag:any , org:any)=>{
|
change: (tag: any, org: any) => {
|
||||||
if(tag.includes("999")){
|
if (tag.includes('999')) {
|
||||||
this.sf4.setValue('/carModel',["999"]);
|
this.sf4.setValue('/carModel', ['999']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -386,17 +388,17 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
mode: 'multiple',
|
mode: 'multiple',
|
||||||
maxMultipleCount:3,
|
maxMultipleCount: 3,
|
||||||
placeholder: '请选择车长',
|
placeholder: '请选择车长',
|
||||||
errors: { required: '请选择车长' },
|
errors: { required: '请选择车长' },
|
||||||
asyncData: () => this.service.getDictOptions({ dictKey: 'car:length' }),
|
asyncData: () => this.service.getDictOptions({ dictKey: 'car:length' }),
|
||||||
change:(tag:any , org:any)=>{
|
change: (tag: any, org: any) => {
|
||||||
if(tag.includes("999")){
|
if (tag.includes('999')) {
|
||||||
this.sf4.setValue('/carModel',["999"]);
|
this.sf4.setValue('/carModel', ['999']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
required: ['weight', 'carModel', 'carLength', 'freightPrice', 'rule', 'settlementBasis']
|
required: ['weight', 'carModel', 'carLength', 'freightPrice', 'rule', 'settlementBasis']
|
||||||
};
|
};
|
||||||
@ -462,19 +464,6 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// receiptAddressId: {
|
|
||||||
// type: 'string',
|
|
||||||
// title: '选择地址',
|
|
||||||
// ui: {
|
|
||||||
// widget: 'custom',
|
|
||||||
// placeholder: '请点击选择收回单地址',
|
|
||||||
// // validator: val => (this.sf6?.value?.receiptType === '2' ? [{ keyword: 'required', message: '请点击选择收回单地址' }] : []),
|
|
||||||
// visibleIf: {
|
|
||||||
// receiptType: value => value === '2'
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
// default: ''
|
|
||||||
// },
|
|
||||||
receiptUserName: {
|
receiptUserName: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '联系人',
|
title: '联系人',
|
||||||
@ -483,7 +472,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
receiptUserPhone: {
|
receiptUserPhone: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -493,7 +482,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
receiptAddressArea: {
|
receiptAddressArea: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -503,7 +492,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
receiptAddress: {
|
receiptAddress: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -513,7 +502,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
paymentDays: {
|
paymentDays: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -535,7 +524,15 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
} as SFTextareaWidgetSchema
|
} as SFTextareaWidgetSchema
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['stateReceipt', 'receiptType', 'receiptUserName','receiptUserPhone','receiptAddressArea','receiptAddress','paymentDays']
|
required: [
|
||||||
|
'stateReceipt',
|
||||||
|
'receiptType',
|
||||||
|
'receiptUserName',
|
||||||
|
'receiptUserPhone',
|
||||||
|
'receiptAddressArea',
|
||||||
|
'receiptAddress',
|
||||||
|
'paymentDays'
|
||||||
|
]
|
||||||
};
|
};
|
||||||
this.ui7 = {
|
this.ui7 = {
|
||||||
'*': {
|
'*': {
|
||||||
@ -664,13 +661,19 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
this.sf1.validator({ emitError: true });
|
this.sf1.validator({ emitError: true });
|
||||||
this.sf3.validator({ emitError: true });
|
this.sf3.validator({ emitError: true });
|
||||||
this.sf4.validator({ emitError: true });
|
this.sf4.validator({ emitError: true });
|
||||||
if (this.validateForm1.invalid || !this.sf1.valid || !this.sf3.valid || !this.sf4.valid ) {
|
if (this.validateForm1.invalid || !this.sf1.valid || !this.sf3.valid || !this.sf4.valid) {
|
||||||
this.service.msgSrv.warning('请完善必填项!');
|
this.service.msgSrv.warning('请完善必填项!');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// 校验各个输入限定值
|
// 校验各个输入限定值
|
||||||
if (this.sf4.value.weight > this.limitValues.maxWeight || this.sf4.value.volume > this.limitValues.maxVolume || this.sf4.value.number > this.limitValues.maxTrainNumber) {
|
if (
|
||||||
this.service.msgSrv.error(`当前货物核载信息已超出限定值【${this.limitValues.maxWeight}吨、${this.limitValues.maxVolume}方、${this.limitValues.maxTrainNumber}车】`);
|
this.sf4.value.weight > this.limitValues.maxWeight ||
|
||||||
|
this.sf4.value.volume > this.limitValues.maxVolume ||
|
||||||
|
this.sf4.value.number > this.limitValues.maxTrainNumber
|
||||||
|
) {
|
||||||
|
this.service.msgSrv.error(
|
||||||
|
`当前货物核载信息已超出限定值【${this.limitValues.maxWeight}吨、${this.limitValues.maxVolume}方、${this.limitValues.maxTrainNumber}车】`
|
||||||
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -679,58 +682,67 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// //装卸货信息
|
||||||
|
const LoadingList = this.startInfo.concat(this.endInfo);
|
||||||
|
// 货物信息
|
||||||
|
const sf3Values = { ...this.sf3.value };
|
||||||
|
if (sf3Values.goodsTypeName === '其它') {
|
||||||
|
sf3Values.goodsName = sf3Values.goodsName1;
|
||||||
|
delete sf3Values.goodsName1;
|
||||||
|
}
|
||||||
|
if (this.sf4.value.carModel.includes('999')) {
|
||||||
|
this.sf4.value.carModel = ['999'];
|
||||||
|
}
|
||||||
|
if (this.sf4.value.carLength.includes('999')) {
|
||||||
|
this.sf4.value.carLength = ['999'];
|
||||||
|
}
|
||||||
|
const goodsInfoDTOList = [
|
||||||
|
{
|
||||||
|
...this.sf4.value,
|
||||||
|
...this.sf3.value,
|
||||||
|
carModel: this.sf4.value.carModel.join(','),
|
||||||
|
carLength: this.sf4.value.carLength.join(',')
|
||||||
|
}
|
||||||
|
];
|
||||||
|
// 从“再下一单”过来,将所有的子参数内的id都删除
|
||||||
|
if ((this.PageStatus = '大宗下一单')) {
|
||||||
|
LoadingList.forEach((ele: any) => {
|
||||||
|
delete ele.id;
|
||||||
|
});
|
||||||
|
goodsInfoDTOList.forEach((ele: any) => {
|
||||||
|
delete ele.id;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const params: any = {
|
||||||
|
...this.sf1.value,
|
||||||
|
...this.sf7.value,
|
||||||
|
unLoadingPlaceDTOList: LoadingList,
|
||||||
|
goodsInfoDTOList: goodsInfoDTOList
|
||||||
|
};
|
||||||
|
params.freightPrice = this.totalFees;
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
nzTitle: '运输协议',
|
nzTitle: '运输协议',
|
||||||
nzContent: TranAgreementComponent,
|
nzContent: TranAgreementComponent,
|
||||||
nzWidth: 900,
|
nzWidth: 900,
|
||||||
nzFooter: null
|
nzFooter: null,
|
||||||
|
nzComponentParams: { object: params, shipperName: this.shipperName , type:'bulk'}
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe(result => {
|
modalRef.afterClose.subscribe(result => {
|
||||||
if (result) {
|
if (result) {
|
||||||
this.submit(submitType);
|
this.submit(submitType, params);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// 确认提交
|
// 确认提交
|
||||||
submit(submitType?: string): void {
|
submit(submitType?: string, params?: any): void {
|
||||||
// //装卸货信息
|
|
||||||
const LoadingList = this.startInfo.concat(this.endInfo);
|
|
||||||
|
|
||||||
// 货物信息
|
|
||||||
const sf3Values = { ...this.sf3.value };
|
|
||||||
if (sf3Values.goodsTypeName === '其它') {
|
|
||||||
sf3Values.goodsName = sf3Values.goodsName1;
|
|
||||||
delete sf3Values.goodsName1;
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carModel.includes('999')) {
|
|
||||||
this.sf4.value.carModel = ['999']
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carLength.includes('999')) {
|
|
||||||
this.sf4.value.carLength = ['999']
|
|
||||||
}
|
|
||||||
|
|
||||||
const params: any = {
|
|
||||||
...this.sf1.value,
|
|
||||||
...this.sf7.value,
|
|
||||||
unLoadingPlaceDTOList: [...this.startInfo, ...this.endInfo],
|
|
||||||
goodsInfoDTOList: [
|
|
||||||
{
|
|
||||||
...this.sf4.value,
|
|
||||||
...this.sf3.value,
|
|
||||||
carModel: this.sf4.value.carModel.join(','),
|
|
||||||
carLength: this.sf4.value.carLength.join(',')
|
|
||||||
}
|
|
||||||
]
|
|
||||||
};
|
|
||||||
params.freightPrice = this.totalFees;
|
|
||||||
if (submitType) {
|
if (submitType) {
|
||||||
if (submitType == 'assign') {
|
if (submitType == 'assign') {
|
||||||
this.chooseFamifiar(params);
|
this.chooseFamifiar(params);
|
||||||
return;
|
return;
|
||||||
}else if(submitType === 'qrcode'){
|
} else if (submitType === 'qrcode') {
|
||||||
this.service.request(this.service.$api_saveAnotherBulkOrderQRCode, params).subscribe(res => {
|
this.service.request(this.service.$api_saveAnotherBulkOrderQRCode, params).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.assignedQrcode( res, params )
|
this.assignedQrcode(res, params);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
@ -742,28 +754,28 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
this.requests(this.service.$api_set_saveAnotherBulkOrder, params, 2);
|
this.requests(this.service.$api_set_saveAnotherBulkOrder, params, 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 生成二维码
|
// 生成二维码
|
||||||
assignedQrcode(id:string,parms:any ) {
|
assignedQrcode(id: string, parms: any) {
|
||||||
const item = {
|
const item = {
|
||||||
id,
|
id,
|
||||||
enterpriseInfoName: parms.enterpriseInfoName,
|
enterpriseInfoName: parms.enterpriseInfoName,
|
||||||
loadingAddressArr: this.startInfo.map((ele: any)=>ele.detailedAddress),
|
loadingAddressArr: this.startInfo.map((ele: any) => ele.detailedAddress),
|
||||||
unloadingAddressArr: this.endInfo.map((ele: any)=>ele.detailedAddress),
|
unloadingAddressArr: this.endInfo.map((ele: any) => ele.detailedAddress),
|
||||||
deadlineTime: parms.deadlineTime,
|
deadlineTime: parms.deadlineTime
|
||||||
}
|
};
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
nzTitle: '二维码',
|
nzTitle: '二维码',
|
||||||
nzWidth: '468px',
|
nzWidth: '468px',
|
||||||
nzContent: SupplyManagementQrcodePageComponent,
|
nzContent: SupplyManagementQrcodePageComponent,
|
||||||
nzComponentParams: {
|
nzComponentParams: {
|
||||||
i: item,
|
i: item
|
||||||
},
|
},
|
||||||
nzFooter: null,
|
nzFooter: null
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe(() => {
|
modalRef.afterClose.subscribe(() => {
|
||||||
this.router.navigate(['/supply-management/index'], { queryParams: { type: 'bulk' } });
|
this.router.navigate(['/supply-management/index'], { queryParams: { type: 'bulk' } });
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
requests(url: any, params: any, change?: any) {
|
requests(url: any, params: any, change?: any) {
|
||||||
this.service.request(url, params).subscribe((res: any) => {
|
this.service.request(url, params).subscribe((res: any) => {
|
||||||
if (res) {
|
if (res) {
|
||||||
@ -875,6 +887,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
dataR(res: any) {
|
dataR(res: any) {
|
||||||
// 注:区分编辑和下一单 区别是初始化的时候加不加ID
|
// 注:区分编辑和下一单 区别是初始化的时候加不加ID
|
||||||
if (res?.shipperAppUserName) {
|
if (res?.shipperAppUserName) {
|
||||||
|
this.shipperName = res?.shipperAppUserName;
|
||||||
const List: any = [];
|
const List: any = [];
|
||||||
this.service.request(this.service.$api_enterpriceList, { enterpriseName: res?.shipperAppUserName }).subscribe(rs => {
|
this.service.request(this.service.$api_enterpriceList, { enterpriseName: res?.shipperAppUserName }).subscribe(rs => {
|
||||||
rs?.forEach((element: any) => {
|
rs?.forEach((element: any) => {
|
||||||
@ -998,6 +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) {
|
||||||
|
this.amapService.drivingCompute([...this.startInfo], [...this.endInfo]).subscribe(res => {
|
||||||
|
this.totalDistance = res.distance;
|
||||||
|
this.totalTime = res.time;
|
||||||
|
});
|
||||||
|
}
|
||||||
this.totalFees = res?.freightPrice || '0';
|
this.totalFees = res?.freightPrice || '0';
|
||||||
this.sf7data = {
|
this.sf7data = {
|
||||||
stateReceipt: res?.stateReceipt,
|
stateReceipt: res?.stateReceipt,
|
||||||
@ -1057,8 +1077,8 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// 装卸货地址互换
|
// 装卸货地址互换
|
||||||
swapAddress(){
|
swapAddress() {
|
||||||
let item = this.startInfo;
|
let item = this.startInfo;
|
||||||
this.startInfo = this.endInfo;
|
this.startInfo = this.endInfo;
|
||||||
this.endInfo = item;
|
this.endInfo = item;
|
||||||
@ -1070,13 +1090,13 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
element.type = '2';
|
element.type = '2';
|
||||||
});
|
});
|
||||||
|
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
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 = [
|
||||||
@ -1084,9 +1104,9 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
this.service.limitKeys2.weight,
|
this.service.limitKeys2.weight,
|
||||||
this.service.limitKeys2.volume,
|
this.service.limitKeys2.volume,
|
||||||
this.service.limitKeys2.trainNumber,
|
this.service.limitKeys2.trainNumber,
|
||||||
this.service.limitKeys2.freight,
|
this.service.limitKeys2.freight
|
||||||
];
|
];
|
||||||
this.service.request(this.service.$api_findItemValueByItemKeys, getlimitvaluesParms).subscribe((res) => {
|
this.service.request(this.service.$api_findItemValueByItemKeys, getlimitvaluesParms).subscribe(res => {
|
||||||
const maxMonth = res.filter((item: any) => item.itemKey === this.service.limitKeys2.month)[0].itemValue;
|
const maxMonth = res.filter((item: any) => item.itemKey === this.service.limitKeys2.month)[0].itemValue;
|
||||||
const maxWeight = res.filter((item: any) => item.itemKey === this.service.limitKeys2.weight)[0].itemValue;
|
const maxWeight = res.filter((item: any) => item.itemKey === this.service.limitKeys2.weight)[0].itemValue;
|
||||||
const maxVolume = res.filter((item: any) => item.itemKey === this.service.limitKeys2.volume)[0].itemValue;
|
const maxVolume = res.filter((item: any) => item.itemKey === this.service.limitKeys2.volume)[0].itemValue;
|
||||||
@ -1098,7 +1118,7 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
maxVolume: Number(maxVolume),
|
maxVolume: Number(maxVolume),
|
||||||
maxTrainNumber: Number(maxTrainNumber),
|
maxTrainNumber: Number(maxTrainNumber),
|
||||||
maxFreight: Number(maxFreight)
|
maxFreight: Number(maxFreight)
|
||||||
}
|
};
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -48,6 +48,7 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
maxTrainNumber: 99999,
|
maxTrainNumber: 99999,
|
||||||
maxFreight: 9999999
|
maxFreight: 9999999
|
||||||
}
|
}
|
||||||
|
shipperName = '';
|
||||||
// // 单位
|
// // 单位
|
||||||
startInfo: any[] = [];
|
startInfo: any[] = [];
|
||||||
endInfo: any[] = [];
|
endInfo: any[] = [];
|
||||||
@ -139,10 +140,11 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
return of([]);
|
return of([]);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
change: (q: any) => {
|
change: (q: any, qs: any) => {
|
||||||
let str =q.replace(/^\s+|\s+$/g,"");
|
let str =q.replace(/^\s+|\s+$/g,"");
|
||||||
if (str) {
|
if (str) {
|
||||||
this.getRegionCode(str);
|
this.getRegionCode(str);
|
||||||
|
this.shipperName = qs?.label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} as SFSelectWidgetSchema
|
} as SFSelectWidgetSchema
|
||||||
@ -606,51 +608,54 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
this.service.msgSrv.error(`当前运费单价已超出限定值【${this.limitValues.maxFreight}元】`);
|
this.service.msgSrv.error(`当前运费单价已超出限定值【${this.limitValues.maxFreight}元】`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// //装卸货信息
|
||||||
|
const LoadingList = this.startInfo.concat(this.endInfo);
|
||||||
|
|
||||||
|
// 货物信息
|
||||||
|
const sf3Values = { ...this.sf3.value };
|
||||||
|
if (sf3Values.goodsTypeName === '其它') {
|
||||||
|
sf3Values.goodsName = sf3Values.goodsName1;
|
||||||
|
delete sf3Values.goodsName1;
|
||||||
|
}
|
||||||
|
if (this.sf4.value.carModel.includes('999')) {
|
||||||
|
this.sf4.value.carModel = ['999']
|
||||||
|
}
|
||||||
|
if (this.sf4.value.carLength.includes('999')) {
|
||||||
|
this.sf4.value.carLength = ['999']
|
||||||
|
}
|
||||||
|
|
||||||
|
const goodsInfoList = [
|
||||||
|
{
|
||||||
|
...sf3Values,
|
||||||
|
...this.sf4.value,
|
||||||
|
carModel: this.sf4.value.carModel.join(','),
|
||||||
|
carLength: this.sf4.value.carLength.join(',')
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const params = {
|
||||||
|
id: '',
|
||||||
|
...this.sf1.value,
|
||||||
|
unLoadingPlaceDTOList: LoadingList,
|
||||||
|
goodsInfoDTOList: goodsInfoList,
|
||||||
|
...this.sf6.value
|
||||||
|
};
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
nzTitle: '运输协议',
|
nzTitle: '运输协议',
|
||||||
nzContent: TranAgreementComponent,
|
nzContent: TranAgreementComponent,
|
||||||
nzWidth: 900,
|
nzWidth: 900,
|
||||||
nzFooter: null
|
nzFooter: null,
|
||||||
|
nzComponentParams: { object: params, shipperName: this.shipperName , type:'bulk'}
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe(result => {
|
modalRef.afterClose.subscribe(result => {
|
||||||
if (result) {
|
if (result) {
|
||||||
this.submit(submitType);
|
this.submit(submitType, params);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
// 确认提交(下单)
|
// 确认提交(下单)
|
||||||
submit(submitType: string): void {
|
submit(submitType?: string, params?: any): void {
|
||||||
// //装卸货信息
|
|
||||||
const LoadingList = this.startInfo.concat(this.endInfo);
|
|
||||||
|
|
||||||
// 货物信息
|
|
||||||
const sf3Values = { ...this.sf3.value };
|
|
||||||
if (sf3Values.goodsTypeName === '其它') {
|
|
||||||
sf3Values.goodsName = sf3Values.goodsName1;
|
|
||||||
delete sf3Values.goodsName1;
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carModel.includes('999')) {
|
|
||||||
this.sf4.value.carModel = ['999']
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carLength.includes('999')) {
|
|
||||||
this.sf4.value.carLength = ['999']
|
|
||||||
}
|
|
||||||
|
|
||||||
const goodsInfoList = [
|
|
||||||
{
|
|
||||||
...sf3Values,
|
|
||||||
...this.sf4.value,
|
|
||||||
carModel: this.sf4.value.carModel.join(','),
|
|
||||||
carLength: this.sf4.value.carLength.join(',')
|
|
||||||
}
|
|
||||||
];
|
|
||||||
const params = {
|
|
||||||
id: '',
|
|
||||||
...this.sf1.value,
|
|
||||||
unLoadingPlaceDTOList: LoadingList,
|
|
||||||
goodsInfoDTOList: goodsInfoList,
|
|
||||||
...this.sf6.value
|
|
||||||
};
|
|
||||||
|
|
||||||
let reqUrl = this.service.$api_consignBulk;
|
let reqUrl = this.service.$api_consignBulk;
|
||||||
if (submitType === 'assign') {
|
if (submitType === 'assign') {
|
||||||
@ -839,13 +844,13 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
element.type = '2';
|
element.type = '2';
|
||||||
});
|
});
|
||||||
|
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
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 = [
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-01-12 10:52:50
|
* @Date : 2022-01-12 10:52:50
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-02 18:09:01
|
* @LastEditTime : 2022-03-04 15:45:58
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\bulk\\bulk.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\bulk\\bulk.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -32,7 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div nz-col [nzSpan]="_$expand ? 24 : 6" class="text-right">
|
<div nz-col [nzSpan]="_$expand ? 24 : 6" class="text-right">
|
||||||
<button nz-button nzType="primary" [nzLoading]="loading" (click)="search()" acl [acl-ability]="['SUPPLY-INDEX-bulkSearch']">查询</button>
|
<button nz-button nzType="primary" [nzLoading]="loading" (click)="search()" acl [acl-ability]="['SUPPLY-INDEX-bulkSearch']">查询</button>
|
||||||
<button nz-button nzType="primary" [disabled]="loading">导入</button>
|
<button nz-button nzType="primary" [disabled]="loading" (click)="exportFire()">导出</button>
|
||||||
<button nz-button [disabled]="loading" (click)="resetSF()">重置</button>
|
<button nz-button [disabled]="loading" (click)="resetSF()">重置</button>
|
||||||
<button nz-button nzType="link" (click)="expandToggle()">
|
<button nz-button nzType="link" (click)="expandToggle()">
|
||||||
{{ !_$expand ? '展开' : '收起' }}
|
{{ !_$expand ? '展开' : '收起' }}
|
||||||
|
|||||||
@ -569,7 +569,12 @@ export class SupplyManagementBulkComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
userAction() {
|
// 导出
|
||||||
|
exportFire() {
|
||||||
}
|
this.service.request(this.service.$api_asyncExportBulkList, this.reqParams ).subscribe((res: any) => {
|
||||||
|
if(res) {
|
||||||
|
this.service.msgSrv.success('导出成功,请去下载中心下载!')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -228,13 +228,15 @@
|
|||||||
</ng-template>
|
</ng-template>
|
||||||
</sf>
|
</sf>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<nz-card>
|
<nz-card>
|
||||||
<div class="card-title">服务信息</div>
|
<div class="card-title">服务信息</div>
|
||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col nzSpan="16">
|
<div nz-col nzSpan="16">
|
||||||
<sf #sf5 [schema]="schema5" [button]="'none'" [ui]="ui5" [formData]="sf5data">
|
<sf #sf5 [schema]="schema5" [button]="'none'" [ui]="ui5" [formData]="sf5data">
|
||||||
<ng-template sf-template="freeInsurance" let-i let-ui="ui">
|
<ng-template sf-template="freeInsurance1" let-i let-ui="ui">
|
||||||
|
<nz-alert nzType="warning" [nzMessage]="template1" nzShowIcon></nz-alert>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template sf-template="freeInsurance2" let-i let-ui="ui">
|
||||||
<nz-alert nzType="warning" [nzMessage]="template1" nzShowIcon></nz-alert>
|
<nz-alert nzType="warning" [nzMessage]="template1" nzShowIcon></nz-alert>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template #template1>推荐投保,填写货值自动估保费,司机接单后不可退保。详见<a target="_blank" [queryParams]="{ type: 10 }" [routerLink]="['/agreement']">《投保告知》</a></ng-template>
|
<ng-template #template1>推荐投保,填写货值自动估保费,司机接单后不可退保。详见<a target="_blank" [queryParams]="{ type: 10 }" [routerLink]="['/agreement']">《投保告知》</a></ng-template>
|
||||||
@ -243,10 +245,10 @@
|
|||||||
<nz-input-number
|
<nz-input-number
|
||||||
[ngModel]="i.value"
|
[ngModel]="i.value"
|
||||||
[nzMin]="50000"
|
[nzMin]="50000"
|
||||||
[nzMax]="3000000"
|
[nzMax]="2000000"
|
||||||
[nzStep]="0.01"
|
[nzStep]="0.01"
|
||||||
(ngModelChange)="i.setValue($event);getInsurersPrice()"
|
(ngModelChange)="i.setValue($event);getInsurersPrice()"
|
||||||
nzPlaceHolder="请输入50000-3000000之间数值"
|
nzPlaceHolder="请输入50000-2000000之间数值"
|
||||||
></nz-input-number>
|
></nz-input-number>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -258,9 +260,10 @@
|
|||||||
></span>
|
></span>
|
||||||
<ng-template #template2>
|
<ng-template #template2>
|
||||||
<p>注意事项:</p>
|
<p>注意事项:</p>
|
||||||
<p>①请仔细阅读《投保告知》</p>
|
<p>①请仔细阅读《投保告知函》;</p>
|
||||||
<p>②港澳台、西藏不在投保范围内,不予承保</p>
|
<p>②香港、澳门、台湾、西藏、新疆不在投保范围内,不予承保;</p>
|
||||||
<p>③保价费最低收费2元,请按真实货值填写,录入的所有信息必须确保真实,不如实录入的内容,不承担对应赔偿责任。</p>
|
<p>③最低保费12元/每单;单次运输保额仅限200万元以内;</p>
|
||||||
|
<p>④本保险只限于货物起运前投保,起运后投保无效,保险人不负赔偿责任;</p>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -58,10 +58,10 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
totalTime = 0.0; //路程总时间
|
totalTime = 0.0; //路程总时间
|
||||||
currentRate = 0; //实时计算的费率
|
currentRate = 0; //实时计算的费率
|
||||||
id = this.route.snapshot.params.id;
|
id = this.route.snapshot.params.id;
|
||||||
// // 单位
|
|
||||||
startInfo: any = []; // 发货地数据
|
startInfo: any = []; // 发货地数据
|
||||||
endInfo: any = []; // 卸货地数据
|
endInfo: any = []; // 卸货地数据
|
||||||
PageStatus = '';
|
PageStatus = '';
|
||||||
|
shipperName = '';
|
||||||
changeSub = new Subject<string>();
|
changeSub = new Subject<string>();
|
||||||
envCache: any;
|
envCache: any;
|
||||||
enterpriseProjectIds: any;
|
enterpriseProjectIds: any;
|
||||||
@ -163,10 +163,11 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
return of([]);
|
return of([]);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
change: (q: any) => {
|
change: (q: any, qs: any) => {
|
||||||
let str = q.replace(/^\s+|\s+$/g, '');
|
let str = q.replace(/^\s+|\s+$/g, '');
|
||||||
if (str) {
|
if (str) {
|
||||||
this.getRegionCode(str);
|
this.getRegionCode(str);
|
||||||
|
this.shipperName = qs?.label;
|
||||||
this.payChange();
|
this.payChange();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -410,7 +411,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
properties: {
|
properties: {
|
||||||
insuranceType: {
|
insuranceType: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '增值服务套餐',
|
title: '服务包',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
asyncData: () => {
|
asyncData: () => {
|
||||||
@ -418,10 +419,15 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
map((res: any) => {
|
map((res: any) => {
|
||||||
return [...res];
|
return [...res];
|
||||||
})
|
})
|
||||||
);
|
)
|
||||||
},
|
},
|
||||||
change: (tag: any, org: any) => {
|
change: (tag: any, org: any) => {
|
||||||
this.getInsurersPrice(tag);
|
if(tag === '3'){
|
||||||
|
this.sf5.setValue('/insurancePremium', null);
|
||||||
|
this.sf5.setValue('/insuranceRate', null);
|
||||||
|
}else {
|
||||||
|
this.getInsurersPrice(tag);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
default: '3'
|
default: '3'
|
||||||
@ -429,31 +435,39 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
type1: {
|
type1: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '',
|
title: '',
|
||||||
enum: ['车辆实时定位', '轨迹查询', '数据保护', '赠送基本险'],
|
enum: ['资源曝光率 +10', '车源匹配率 +10'],
|
||||||
|
readOnly: true,
|
||||||
|
ui: {
|
||||||
|
widget: 'checkbox',
|
||||||
|
visibleIf: { insuranceType: (value: string) => value === '0' }
|
||||||
|
} as SFCheckboxWidgetSchema,
|
||||||
|
default: ['资源曝光率 +10', '车源匹配率 +10']
|
||||||
|
},
|
||||||
|
type2: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
enum: ['资源曝光率 +20', '车源匹配率 +20'],
|
||||||
readOnly: true,
|
readOnly: true,
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'checkbox',
|
widget: 'checkbox',
|
||||||
visibleIf: { insuranceType: (value: string) => value === '1' }
|
visibleIf: { insuranceType: (value: string) => value === '1' }
|
||||||
} as SFCheckboxWidgetSchema,
|
} as SFCheckboxWidgetSchema,
|
||||||
default: ['车辆实时定位', '轨迹查询', '数据保护', '赠送基本险']
|
default: ['资源曝光率 +20', '车源匹配率 +20']
|
||||||
},
|
},
|
||||||
type2: {
|
freeInsurance1: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '',
|
title: '赠送基本险',
|
||||||
enum: ['车辆实时定位', '轨迹查询', '数据保护', '专属技术服务', '赠送综合险'],
|
|
||||||
readOnly: true,
|
|
||||||
ui: {
|
|
||||||
widget: 'checkbox',
|
|
||||||
visibleIf: { insuranceType: (value: string) => value === '2' }
|
|
||||||
} as SFCheckboxWidgetSchema,
|
|
||||||
default: ['车辆实时定位', '轨迹查询', '数据保护', '专属技术服务', '赠送综合险']
|
|
||||||
},
|
|
||||||
freeInsurance: {
|
|
||||||
type: 'string',
|
|
||||||
title: '赠送保险',
|
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'custom',
|
widget: 'custom',
|
||||||
visibleIf: { insuranceType: (value: string) => value !== '3' }
|
visibleIf: { insuranceType: (value: string) => value === '0' }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
freeInsurance2: {
|
||||||
|
type: 'string',
|
||||||
|
title: '赠送综合险',
|
||||||
|
ui: {
|
||||||
|
widget: 'custom',
|
||||||
|
visibleIf: { insuranceType: (value: string) => value === '1' }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
insurancePackagedGoods: {
|
insurancePackagedGoods: {
|
||||||
@ -479,7 +493,6 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
title: '货物价值',
|
title: '货物价值',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'custom',
|
widget: 'custom',
|
||||||
descriptionI18n: '输入50000-3000000之间数值',
|
|
||||||
visibleIf: { insuranceType: (value: string) => value !== '3' }
|
visibleIf: { insuranceType: (value: string) => value !== '3' }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -513,7 +526,10 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
$type2: {
|
$type2: {
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
},
|
},
|
||||||
$freeInsurance: {
|
$freeInsurance1: {
|
||||||
|
grid: { span: 24 }
|
||||||
|
},
|
||||||
|
$freeInsurance2: {
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -565,65 +581,45 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
receiptAddress: {
|
|
||||||
type: 'string',
|
|
||||||
title: '回单收件人信息',
|
|
||||||
ui: {
|
|
||||||
widget: 'custom',
|
|
||||||
placeholder: '请点击选择回单收件人信息',
|
|
||||||
// validator: val => (this.sf6?.value?.receiptType === '2' ? [{ keyword: 'required', message: '请点击选择收回单地址' }] : []),
|
|
||||||
visibleIf: {
|
|
||||||
receiptType: value => value === '2'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
default: ''
|
|
||||||
},
|
|
||||||
receiptAddressId: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
hidden: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
receiptUserName: {
|
receiptUserName: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '联系人',
|
title: '联系人',
|
||||||
|
maxLength: 15,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
phon: {
|
receiptUserPhone: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '联系电话',
|
title: '联系电话',
|
||||||
|
maxLength: 11,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
area: {
|
receiptAddressArea: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '所在地区',
|
title: '所在地区',
|
||||||
|
maxLength: 30,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
address: {
|
receiptAddress: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '详细地址',
|
title: '详细地址',
|
||||||
|
maxLength: 30,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
remarks: {
|
remarks: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -636,11 +632,11 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
} as SFTextareaWidgetSchema
|
} as SFTextareaWidgetSchema
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['stateReceipt', 'receiptType', 'receiptAddress']
|
required: ['stateReceipt', 'receiptType', 'receiptUserName', 'receiptUserPhone', 'receiptAddressArea', 'receiptAddress']
|
||||||
};
|
};
|
||||||
this.ui6 = {
|
this.ui6 = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 115,
|
spanLabelFixed: 90,
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -1003,7 +999,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
nzContent: TranAgreementComponent,
|
nzContent: TranAgreementComponent,
|
||||||
nzWidth: 900,
|
nzWidth: 900,
|
||||||
nzFooter: null,
|
nzFooter: null,
|
||||||
nzComponentParams: { Object: params }
|
nzComponentParams: { object: params, shipperName: this.shipperName,type:'onecar' }
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe(result => {
|
modalRef.afterClose.subscribe(result => {
|
||||||
if (result) {
|
if (result) {
|
||||||
@ -1049,6 +1045,8 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
// 打开地图
|
// 打开地图
|
||||||
openMap(type: string, index: number) {
|
openMap(type: string, index: number) {
|
||||||
|
console.log(type);
|
||||||
|
console.log(index);
|
||||||
const modalRef = this.modalService.create({
|
const modalRef = this.modalService.create({
|
||||||
nzTitle: '',
|
nzTitle: '',
|
||||||
nzContent: AmapPoiPickerComponent,
|
nzContent: AmapPoiPickerComponent,
|
||||||
@ -1102,6 +1100,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
// 初始化赋值信息函数
|
// 初始化赋值信息函数
|
||||||
dataR(res: any) {
|
dataR(res: any) {
|
||||||
if (res?.shipperAppUserName) {
|
if (res?.shipperAppUserName) {
|
||||||
|
this.shipperName = res?.shipperAppUserName;
|
||||||
const List: any = [];
|
const List: any = [];
|
||||||
this.service.request(this.service.$api_enterpriceList, { enterpriseName: res?.shipperAppUserName }).subscribe(rs => {
|
this.service.request(this.service.$api_enterpriceList, { enterpriseName: res?.shipperAppUserName }).subscribe(rs => {
|
||||||
rs?.forEach((element: any) => {
|
rs?.forEach((element: any) => {
|
||||||
@ -1195,13 +1194,14 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
this.validateForm1.addControl(`unloadPhone${controlId}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`unloadPhone${controlId}`, new FormControl(null, Validators.required));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo?.[0]?.area && this.endInfo?.[0]?.area) {
|
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.getInsurersPrice(); //计算保费金额
|
||||||
}
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
this.sf3data = {
|
this.sf3data = {
|
||||||
@ -1310,14 +1310,14 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
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.getInsurersPrice(); //计算保费金额
|
this.getInsurersPrice(); //计算保费金额
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -1361,7 +1361,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
this.validateForm1.addControl(`unloadPhone${index}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
this.validateForm1.addControl(`unloadPhone${index}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
||||||
});
|
});
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
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;
|
||||||
|
|||||||
@ -238,7 +238,10 @@
|
|||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col nzSpan="16">
|
<div nz-col nzSpan="16">
|
||||||
<sf #sf5 [schema]="schema5" [button]="'none'" [ui]="ui5" [formData]="sf5data">
|
<sf #sf5 [schema]="schema5" [button]="'none'" [ui]="ui5" [formData]="sf5data">
|
||||||
<ng-template sf-template="freeInsurance" let-i let-ui="ui">
|
<ng-template sf-template="freeInsurance1" let-i let-ui="ui">
|
||||||
|
<nz-alert nzType="warning" [nzMessage]="template1" nzShowIcon></nz-alert>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template sf-template="freeInsurance2" let-i let-ui="ui">
|
||||||
<nz-alert nzType="warning" [nzMessage]="template1" nzShowIcon></nz-alert>
|
<nz-alert nzType="warning" [nzMessage]="template1" nzShowIcon></nz-alert>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template #template1>推荐投保,填写货值自动估保费,司机接单后不可退保。详见<a target="_blank" [queryParams]="{ type: 10 }" [routerLink]="['/agreement']">《投保告知》</a></ng-template>
|
<ng-template #template1>推荐投保,填写货值自动估保费,司机接单后不可退保。详见<a target="_blank" [queryParams]="{ type: 10 }" [routerLink]="['/agreement']">《投保告知》</a></ng-template>
|
||||||
@ -247,10 +250,10 @@
|
|||||||
<nz-input-number
|
<nz-input-number
|
||||||
[ngModel]="i.value"
|
[ngModel]="i.value"
|
||||||
[nzMin]="50000"
|
[nzMin]="50000"
|
||||||
[nzMax]="3000000"
|
[nzMax]="2000000"
|
||||||
[nzStep]="0.01"
|
[nzStep]="0.01"
|
||||||
(ngModelChange)="i.setValue($event);getInsurersPrice()"
|
(ngModelChange)="i.setValue($event);getInsurersPrice()"
|
||||||
nzPlaceHolder="请输入50000-3000000之间数值"
|
nzPlaceHolder="请输入50000-2000000之间数值"
|
||||||
></nz-input-number>
|
></nz-input-number>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -262,9 +265,10 @@
|
|||||||
></span>
|
></span>
|
||||||
<ng-template #template2>
|
<ng-template #template2>
|
||||||
<p>注意事项:</p>
|
<p>注意事项:</p>
|
||||||
<p>①请仔细阅读《投保告知》</p>
|
<p>①请仔细阅读《投保告知函》;</p>
|
||||||
<p>②港澳台、西藏不在投保范围内,不予承保</p>
|
<p>②香港、澳门、台湾、西藏、新疆不在投保范围内,不予承保;</p>
|
||||||
<p>③保价费最低收费2元,请按真实货值填写,录入的所有信息必须确保真实,不如实录入的内容,不承担对应赔偿责任。</p>
|
<p>③最低保费12元/每单;单次运输保额仅限200万元以内;</p>
|
||||||
|
<p>④本保险只限于货物起运前投保,起运后投保无效,保险人不负赔偿责任;</p>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -277,15 +281,6 @@
|
|||||||
<div nz-row>
|
<div nz-row>
|
||||||
<div nz-col nzSpan="12">
|
<div nz-col nzSpan="12">
|
||||||
<sf #sf6 [schema]="schema6" [button]="'none'" [ui]="ui6" [formData]="sf6data">
|
<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()"
|
|
||||||
/>
|
|
||||||
</ng-template> -->
|
|
||||||
</sf>
|
</sf>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -51,6 +51,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
totalDistance = 0.0; //总里程
|
totalDistance = 0.0; //总里程
|
||||||
totalTime = 0.0; //路程总时间
|
totalTime = 0.0; //路程总时间
|
||||||
currentRate = 0; //实时计算的费率
|
currentRate = 0; //实时计算的费率
|
||||||
|
shipperName = '';
|
||||||
constructor(
|
constructor(
|
||||||
private http: _HttpClient,
|
private http: _HttpClient,
|
||||||
fb: FormBuilder,
|
fb: FormBuilder,
|
||||||
@ -156,10 +157,11 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
return of([]);
|
return of([]);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
change: (q: any) => {
|
change: (q: any, qs: any) => {
|
||||||
let str = q.replace(/^\s+|\s+$/g, '');
|
let str = q.replace(/^\s+|\s+$/g, '');
|
||||||
if (str) {
|
if (str) {
|
||||||
this.getRegionCode(str);
|
this.getRegionCode(str);
|
||||||
|
this.shipperName = qs?.label;
|
||||||
this.payChange();
|
this.payChange();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -409,7 +411,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
properties: {
|
properties: {
|
||||||
insuranceType: {
|
insuranceType: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '增值服务套餐',
|
title: '服务包',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
asyncData: () => {
|
asyncData: () => {
|
||||||
@ -417,10 +419,15 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
map((res: any) => {
|
map((res: any) => {
|
||||||
return [...res];
|
return [...res];
|
||||||
})
|
})
|
||||||
);
|
)
|
||||||
},
|
},
|
||||||
change: (tag: any, org: any) => {
|
change: (tag: any, org: any) => {
|
||||||
this.getInsurersPrice(tag);
|
if(tag === '3'){
|
||||||
|
this.sf5.setValue('/insurancePremium', null);
|
||||||
|
this.sf5.setValue('/insuranceRate', null);
|
||||||
|
}else {
|
||||||
|
this.getInsurersPrice(tag);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
default: '3'
|
default: '3'
|
||||||
@ -428,31 +435,39 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
type1: {
|
type1: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '',
|
title: '',
|
||||||
enum: ['车辆实时定位', '轨迹查询', '数据保护', '赠送基本险'],
|
enum: ['资源曝光率 +10', '车源匹配率 +10'],
|
||||||
|
readOnly: true,
|
||||||
|
ui: {
|
||||||
|
widget: 'checkbox',
|
||||||
|
visibleIf: { insuranceType: (value: string) => value === '0' }
|
||||||
|
} as SFCheckboxWidgetSchema,
|
||||||
|
default: ['资源曝光率 +10', '车源匹配率 +10']
|
||||||
|
},
|
||||||
|
type2: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
enum: ['资源曝光率 +20', '车源匹配率 +20'],
|
||||||
readOnly: true,
|
readOnly: true,
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'checkbox',
|
widget: 'checkbox',
|
||||||
visibleIf: { insuranceType: (value: string) => value === '1' }
|
visibleIf: { insuranceType: (value: string) => value === '1' }
|
||||||
} as SFCheckboxWidgetSchema,
|
} as SFCheckboxWidgetSchema,
|
||||||
default: ['车辆实时定位', '轨迹查询', '数据保护', '赠送基本险']
|
default: ['资源曝光率 +20', '车源匹配率 +20']
|
||||||
},
|
},
|
||||||
type2: {
|
freeInsurance1: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '',
|
title: '赠送基本险',
|
||||||
enum: ['车辆实时定位', '轨迹查询', '数据保护', '专属技术服务', '赠送综合险'],
|
|
||||||
readOnly: true,
|
|
||||||
ui: {
|
|
||||||
widget: 'checkbox',
|
|
||||||
visibleIf: { insuranceType: (value: string) => value === '2' }
|
|
||||||
} as SFCheckboxWidgetSchema,
|
|
||||||
default: ['车辆实时定位', '轨迹查询', '数据保护', '专属技术服务', '赠送综合险']
|
|
||||||
},
|
|
||||||
freeInsurance: {
|
|
||||||
type: 'string',
|
|
||||||
title: '赠送保险',
|
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'custom',
|
widget: 'custom',
|
||||||
visibleIf: { insuranceType: (value: string) => value !== '3' }
|
visibleIf: { insuranceType: (value: string) => value === '0' }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
freeInsurance2: {
|
||||||
|
type: 'string',
|
||||||
|
title: '赠送综合险',
|
||||||
|
ui: {
|
||||||
|
widget: 'custom',
|
||||||
|
visibleIf: { insuranceType: (value: string) => value === '1' }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
insurancePackagedGoods: {
|
insurancePackagedGoods: {
|
||||||
@ -478,7 +493,6 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
title: '货物价值',
|
title: '货物价值',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'custom',
|
widget: 'custom',
|
||||||
descriptionI18n: '输入50000-3000000之间数值',
|
|
||||||
visibleIf: { insuranceType: (value: string) => value !== '3' }
|
visibleIf: { insuranceType: (value: string) => value !== '3' }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -512,7 +526,10 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
$type2: {
|
$type2: {
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
},
|
},
|
||||||
$freeInsurance: {
|
$freeInsurance1: {
|
||||||
|
grid: { span: 24 }
|
||||||
|
},
|
||||||
|
$freeInsurance2: {
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -548,65 +565,45 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
receiptAddress: {
|
|
||||||
type: 'string',
|
|
||||||
title: '回单收件人信息',
|
|
||||||
ui: {
|
|
||||||
widget: 'custom',
|
|
||||||
placeholder: '请点击选择回单收件人信息',
|
|
||||||
// validator: val => (this.sf6?.value?.receiptType === '2' ? [{ keyword: 'required', message: '请点击选择收回单地址' }] : []),
|
|
||||||
visibleIf: {
|
|
||||||
receiptType: value => value === '2'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
default: ''
|
|
||||||
},
|
|
||||||
receiptAddressId: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
hidden: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
receiptUserName: {
|
receiptUserName: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '联系人',
|
title: '联系人',
|
||||||
|
maxLength: 15,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
phon: {
|
receiptUserPhone: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '联系电话',
|
title: '联系电话',
|
||||||
|
maxLength: 11,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
area: {
|
receiptAddressArea: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '所在地区',
|
title: '所在地区',
|
||||||
|
maxLength: 30,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
address: {
|
receiptAddress: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '详细地址',
|
title: '详细地址',
|
||||||
|
maxLength: 30,
|
||||||
ui: {
|
ui: {
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
receiptType: value => value === '2'
|
receiptType: value => value === '2'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
readOnly: true
|
|
||||||
},
|
},
|
||||||
remarks: {
|
remarks: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -619,11 +616,11 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
} as SFTextareaWidgetSchema
|
} as SFTextareaWidgetSchema
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['stateReceipt', 'receiptType', 'receiptAddress']
|
required: ['stateReceipt', 'receiptType', 'receiptUserName', 'receiptUserPhone', 'receiptAddressArea', 'receiptAddress']
|
||||||
};
|
};
|
||||||
this.ui6 = {
|
this.ui6 = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 115,
|
spanLabelFixed: 90,
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -977,11 +974,11 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
nzContent: TranAgreementComponent,
|
nzContent: TranAgreementComponent,
|
||||||
nzWidth: 900,
|
nzWidth: 900,
|
||||||
nzFooter: null,
|
nzFooter: null,
|
||||||
nzComponentParams: { Object: params }
|
nzComponentParams: { object: params ,shipperName: this.shipperName,type:'onecar'}
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe(result => {
|
modalRef.afterClose.subscribe(result => {
|
||||||
if (result) {
|
if (result) {
|
||||||
this.submit(submitType, params);
|
this.submit(submitType, params, );
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -1174,14 +1171,14 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
this.validateForm1.addControl(`unloadName${index}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`unloadName${index}`, new FormControl(null, Validators.required));
|
||||||
this.validateForm1.addControl(`unloadPhone${index}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
this.validateForm1.addControl(`unloadPhone${index}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
||||||
});
|
});
|
||||||
// 计算里程,时间
|
// 计算里程,时间
|
||||||
if (this.startInfo[0]?.area && this.endInfo[0]?.area) {
|
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.getInsurersPrice(); //计算保费金额
|
this.getInsurersPrice(); //计算保费金额
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 计算保价费金额
|
// 计算保价费金额
|
||||||
getInsurersPrice(insuranceType = this.sf5.value.insuranceType) {
|
getInsurersPrice(insuranceType = this.sf5.value.insuranceType) {
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<h2 style="text-align: center;">
|
<nz-card class="card-height" >
|
||||||
<div [innerHTML]="agreement | safehtml"></div>
|
<div [innerHTML]="agreement | safehtml"></div>
|
||||||
</h2>
|
</nz-card>
|
||||||
<div *nzModalFooter>
|
<div *nzModalFooter>
|
||||||
<button nz-button nzType="primary" (click)="handleOk()" >我已阅读并同意签署</button>
|
<button nz-button nzType="primary" (click)="handleOk()" >我已阅读并同意签署</button>
|
||||||
</div>
|
</div>
|
||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-02-24 20:19:51
|
* @Date : 2022-02-24 20:19:51
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-28 20:55:59
|
* @LastEditTime : 2022-03-04 16:46:31
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\tran-agreement\\tran-agreement.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\tran-agreement\\tran-agreement.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -28,41 +28,108 @@ import { SupplyManagementService } from '../../services/supply-management.servic
|
|||||||
styleUrls: ['./tran-agreement.component.less']
|
styleUrls: ['./tran-agreement.component.less']
|
||||||
})
|
})
|
||||||
export class TranAgreementComponent {
|
export class TranAgreementComponent {
|
||||||
Object: any;
|
enterpriseInfo:any; // 网络货运人
|
||||||
|
type:any;
|
||||||
|
object: any;
|
||||||
agreement:any;
|
agreement:any;
|
||||||
|
envCache:any;
|
||||||
|
shipperName:any;
|
||||||
constructor(private modal: NzModalRef,public service: SupplyManagementService,) {
|
constructor(private modal: NzModalRef,public service: SupplyManagementService,) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
console.log(Object)
|
console.log(this.object)
|
||||||
const params = {
|
// 获取托运人承运人信息
|
||||||
|
this.service.request(this.service.$api_getContractAtr,{id:this.object?.shipperAppUserId}).subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.enterpriseInfo = res
|
||||||
|
this.getContent();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
getContent() {
|
||||||
|
let params:any;
|
||||||
|
if(this.type ==='onecar'){
|
||||||
|
|
||||||
|
params = {
|
||||||
contractType:'1',
|
contractType:'1',
|
||||||
parametersDTO: {
|
|
||||||
// 回单付
|
|
||||||
back: 'dsfgffdsg',
|
|
||||||
// 发货地址
|
|
||||||
consignorAddress: 'gfdgdfdg',
|
|
||||||
// 发货时间
|
|
||||||
consignorDate: 'dsggdsgsfgds',
|
|
||||||
// 发货时间
|
|
||||||
// consignorDate: '',
|
|
||||||
|
|
||||||
},
|
|
||||||
resourceType: '1',
|
resourceType: '1',
|
||||||
signingObject: '1',
|
signingObject: '1',
|
||||||
templateType: 'MX',
|
templateType: 'MX',
|
||||||
|
parametersDTO: {
|
||||||
|
contractCode:'',
|
||||||
|
shipperLegalPersonName:this.enterpriseInfo.legalPersonName, //托运法定代表人
|
||||||
|
carrierLegalPersonName:this.enterpriseInfo.netLegalPersonName, //承运法定代表人
|
||||||
|
shipperName:this?.shipperName, //托运人
|
||||||
|
carrierName:this.object?.enterpriseInfoName, //承运人
|
||||||
|
consignorInfo: `${this.object?.unLoadingPlaceDTOList[0].appUserName} ${this.object?.unLoadingPlaceDTOList[0].contractTelephone}`, // 发货信息
|
||||||
|
consignorAddress: this.object?.unLoadingPlaceDTOList[0].detailedAddress, // 发货地址
|
||||||
|
consignorDate: this.object?.loadingTime, // 发货时间
|
||||||
|
consigneeInfo: `${this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length-1].appUserName} ${this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length-1].contractTelephone}`, // 收货信息
|
||||||
|
consigneeDate: this.object?.unloadingTime, // 收货时间
|
||||||
|
consigneeAddress: this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length-1].detailedAddress, // 收货地址
|
||||||
|
goodsName:this.object?.goodsInfoDTOList[0].goodsName, // 货物名称
|
||||||
|
shippingType:'整车运输',
|
||||||
|
consignmentVolume:`${this.object?.goodsInfoDTOList[0].weight}吨/${this.object?.goodsInfoDTOList[0].volume}方/${this.object?.goodsInfoDTOList[0].number}件`, //托运量
|
||||||
|
transporterInfo:'', //运输方信息
|
||||||
|
freightAmount:this.object?.total, // 订单运费金额(元)
|
||||||
|
pre:this.object?.expenseDTOList?.filter((item:any) => item.expenseCode === 'PRE')[0].price, //预付
|
||||||
|
rece:this.object?.expenseDTOList?.filter((item:any) => item.expenseCode === 'RECE')[0].price,// 到付
|
||||||
|
back:this.object?.expenseDTOList?.filter((item:any) => item.expenseCode === 'BACK')[0].price,// 回单付
|
||||||
|
lunarKnot:0,
|
||||||
|
total:this.object?.subtotal, // 合计(元)
|
||||||
|
paymentTime:`到货后${this.object?.paymentDays}天`, // 承诺支付运费时间
|
||||||
|
year:new Date().getFullYear(), // 签约年份
|
||||||
|
month:new Date().getMonth()+1, // 签约月份
|
||||||
|
day:new Date().getDate(), // 签约日期
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if(this.type ==='bulk'){
|
||||||
|
params = {
|
||||||
|
contractType:'1',
|
||||||
|
resourceType: '2',
|
||||||
|
signingObject: '1',
|
||||||
|
templateType: 'MX',
|
||||||
|
parametersDTO: {
|
||||||
|
contractCode:'',
|
||||||
|
shipperName:this?.shipperName, //托运人
|
||||||
|
carrierName:this.object?.enterpriseInfoName, //承运人
|
||||||
|
shipperLegalPersonName:this.enterpriseInfo.legalPersonName, //托运法定代表人
|
||||||
|
carrierLegalPersonName:this.enterpriseInfo.netLegalPersonName, //承运法定代表人
|
||||||
|
consignorInfo: `${this.object.unLoadingPlaceDTOList[0].appUserName} ${this.object.unLoadingPlaceDTOList[0].contractTelephone}`, // 发货信息
|
||||||
|
consignorAddress: this.object.unLoadingPlaceDTOList[0].detailedAddress, // 发货地址
|
||||||
|
consignorDate: '', // 发货时间
|
||||||
|
consigneeInfo: `${this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length-1].appUserName} ${this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length-1].contractTelephone}`, // 收货信息
|
||||||
|
consigneeDate: '', // 收货时间
|
||||||
|
consigneeAddress: this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length-1].detailedAddress, // 收货地址
|
||||||
|
goodsName:this.object.goodsInfoDTOList[0].goodsName, // 货物名称
|
||||||
|
shippingType:'大宗运输',
|
||||||
|
consignmentVolume:`${this.object.goodsInfoDTOList[0].weight}吨/${this.object.goodsInfoDTOList[0].volume}方/${this.object.goodsInfoDTOList[0].number}车`, //托运量
|
||||||
|
transporterInfo:'', //运输方信息
|
||||||
|
freightAmount:'', // 订单运费金额(元)
|
||||||
|
pre:'', //预付
|
||||||
|
rece:'',// 到付
|
||||||
|
back:'',// 回单付
|
||||||
|
lunarKnot:'',
|
||||||
|
total:'', // 合计(元)
|
||||||
|
paymentTime:`到货后${this.object.paymentDays}天`, // 承诺支付运费时间
|
||||||
|
year:new Date().getFullYear(), // 签约年份
|
||||||
|
month:new Date().getMonth()+1, // 签约月份
|
||||||
|
day:new Date().getDate(), // 签约日期
|
||||||
|
},
|
||||||
|
}
|
||||||
}
|
}
|
||||||
console.log(params)
|
console.log(params)
|
||||||
|
|
||||||
this.service.request(this.service.$api_getContractContent,params).subscribe((res) => {
|
this.service.request(this.service.$api_getContractContent,params).subscribe((res) => {
|
||||||
if (res) {
|
if (res) {
|
||||||
|
|
||||||
this.agreement = res.contractContent;
|
this.agreement = res.contractContent;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
handleOk(){
|
handleOk(){
|
||||||
this.modal.close(true);
|
this.modal.close(true);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-03 11:10:14
|
* @Date : 2021-12-03 11:10:14
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-16 15:02:33
|
* @LastEditTime : 2022-03-04 14:37:19
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\update-price\\update-price.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\update-price\\update-price.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -25,12 +25,15 @@
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<h4>变更日志</h4>
|
<h4>变更日志</h4>
|
||||||
<st #st [data]="service.$api_getOperationLogRecordsList" [bordered]="true" [columns]="columns" [page]="{ show: false }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }">
|
<st #st [data]="service.$api_getOperationLogRecordsList" [columns]="columns"
|
||||||
<ng-template st-row="operator" let-item let-index="index">
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams}"
|
||||||
<span>{{item.operator}}</span>/
|
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
|
||||||
<span>{{item.telephone}}</span>
|
[page]="{}"
|
||||||
</ng-template>
|
>
|
||||||
</st>
|
<ng-template st-row="operator" let-item>
|
||||||
|
{{item?.operator}}/{{item.telephone}}
|
||||||
|
</ng-template>
|
||||||
|
</st>
|
||||||
</div>
|
</div>
|
||||||
<ng-template #addOnAfterTemplate>
|
<ng-template #addOnAfterTemplate>
|
||||||
<span> {{ freightType[i?.freightType] }}</span>
|
<span> {{ freightType[i?.freightType] }}</span>
|
||||||
|
|||||||
@ -159,10 +159,10 @@
|
|||||||
<sv label="增值服务套餐">
|
<sv label="增值服务套餐">
|
||||||
{{ i?.insuranceTypeLabel }}
|
{{ i?.insuranceTypeLabel }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="货物价值">
|
<sv label="货物价值" *ngIf="i?.insuranceType !== '3'">
|
||||||
{{ i?.goodsValue | currency }}
|
{{ i?.goodsValue | currency }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="保价费金额"> {{ i?.insurancePremium | currency }} 元 </sv>
|
<sv label="保价费金额" *ngIf="i?.insuranceType !== '3'"> {{ i?.insurancePremium | currency }} 元 </sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card [nzTitle]="'运费信息(到货后' + i?.paymentDays + '天内支付运费)'">
|
<nz-card [nzTitle]="'运费信息(到货后' + i?.paymentDays + '天内支付运费)'">
|
||||||
@ -213,7 +213,7 @@
|
|||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card nzTitle="操作日志">
|
<nz-card nzTitle="操作日志">
|
||||||
<st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns"
|
<st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns"
|
||||||
[page]="{ show: false, showSize: false }"
|
[page]="{}"
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } }">
|
[res]="{ reName: { list: 'data.records', total: 'data.total' } }">
|
||||||
</st>
|
</st>
|
||||||
|
|||||||
@ -53,7 +53,7 @@ export class SupplyManagementVehicleDetailComponent implements OnInit {
|
|||||||
get reqParams() {
|
get reqParams() {
|
||||||
return {
|
return {
|
||||||
operateObject: this.i?.resourceCode,
|
operateObject: this.i?.resourceCode,
|
||||||
operateType: 4,
|
operateTypeList: [4,7],
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
constructor(
|
constructor(
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-01-12 10:52:50
|
* @Date : 2022-01-12 10:52:50
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-01 13:12:12
|
* @LastEditTime : 2022-03-04 09:57:16
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\vehicle\\vehicle.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\vehicle\\vehicle.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -31,7 +31,7 @@
|
|||||||
[acl-ability]="['SUPPLY-INDEX-vehicleSearch']"
|
[acl-ability]="['SUPPLY-INDEX-vehicleSearch']"
|
||||||
>查询</button
|
>查询</button
|
||||||
>
|
>
|
||||||
<button nz-button nzType="primary" [disabled]="loading">导出</button>
|
<button nz-button nzType="primary" [disabled]="loading" (click)="exportFire()" >导出</button>
|
||||||
<button nz-button [disabled]="loading" (click)="resetSF()">重置</button>
|
<button nz-button [disabled]="loading" (click)="resetSF()">重置</button>
|
||||||
<button nz-button nzType="link" (click)="expandToggle()">
|
<button nz-button nzType="link" (click)="expandToggle()">
|
||||||
{{ !_$expand ? '展开' : '收起' }}
|
{{ !_$expand ? '展开' : '收起' }}
|
||||||
@ -80,17 +80,17 @@
|
|||||||
<p>{{ item?.resourceStatusLabel }}</p>
|
<p>{{ item?.resourceStatusLabel }}</p>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="total" let-item let-index="index">
|
<ng-template st-row="total" let-item let-index="index">
|
||||||
<div class="mr-xs">{{ item?.totalAmount + item?.surcharge | currency }} </div>
|
<div class="mr-xs">{{ item?.totalAmount | currency }} </div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="totalAmount" let-item let-index="index">
|
<ng-template st-row="totalAmount" let-item let-index="index">
|
||||||
<div class="mr-xs">{{ item?.totalAmount | currency }} </div>
|
<div class="mr-xs">{{ item?.freight | currency }} </div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="surcharge" let-item let-index="index">
|
<ng-template st-row="surcharge" let-item let-index="index">
|
||||||
<div class="mr-xs">{{ item?.surcharge | currency }} </div>
|
<div class="mr-xs">{{ item?.surcharge | currency }} </div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="useCarDemand" let-item let-index="index">
|
<ng-template st-row="useCarDemand" let-item let-index="index">
|
||||||
<div>车型: {{ item?.carModelLabel }}</div>
|
<div>车型: {{ item?.carModelLabel }}</div>
|
||||||
<div class="error">车长: {{ item?.expand }} 米</div>
|
<div class="error">车长: {{ item?.carLenghtLabel }} 米</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -549,10 +549,9 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '创建时间',
|
title: '创建时间',
|
||||||
width: '170px',
|
width: '200px',
|
||||||
index: 'createTime',
|
index: 'createTime',
|
||||||
className: 'text-left',
|
className: 'text-left',
|
||||||
type: 'date'
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '审核状态',
|
title: '审核状态',
|
||||||
@ -612,4 +611,12 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
// 导出
|
||||||
|
exportFire() {
|
||||||
|
this.service.request(this.service.$api_asyncExportWholeList, this.reqParams ).subscribe((res: any) => {
|
||||||
|
if(res) {
|
||||||
|
this.service.msgSrv.success('导出成功,请去下载中心下载!')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -54,8 +54,8 @@ export class SupplyManagementService extends BaseService {
|
|||||||
$api_getCalculatedSurcharge = `/api/sdc/expense/getCalculatedSurcharge`;
|
$api_getCalculatedSurcharge = `/api/sdc/expense/getCalculatedSurcharge`;
|
||||||
// 整车计算附加费率
|
// 整车计算附加费率
|
||||||
$api_getcalculatedServiceRate = `/api/sdc/expense/getAdditionalRate`;
|
$api_getcalculatedServiceRate = `/api/sdc/expense/getAdditionalRate`;
|
||||||
// 整车计算附加费率
|
// 整车计算附加费率
|
||||||
$api_getAdditionalRate = `/api/sdc/expense/getAdditionalRate`;
|
$api_getAdditionalRate = `/api/sdc/expense/getAdditionalRate`;
|
||||||
// 代发整车货源
|
// 代发整车货源
|
||||||
$api_consignWhole = `/api/sdc/goodsResourceOperate/consignWhole`;
|
$api_consignWhole = `/api/sdc/goodsResourceOperate/consignWhole`;
|
||||||
// 代发大宗货源
|
// 代发大宗货源
|
||||||
@ -139,20 +139,20 @@ export class SupplyManagementService extends BaseService {
|
|||||||
super(injector);
|
super(injector);
|
||||||
}
|
}
|
||||||
public limitKeys = {
|
public limitKeys = {
|
||||||
weight:'sys.config.goods.approvalCarMaxWeight', //整车-核载重量上限
|
weight: 'sys.config.goods.approvalCarMaxWeight', //整车-核载重量上限
|
||||||
volume:'sys.config.goods.approvalCarMaxVolume', //整车-核载体积上限
|
volume: 'sys.config.goods.approvalCarMaxVolume', //整车-核载体积上限
|
||||||
piece:'sys.config.goods.approvalCarMaxPiece', //整车-核载件数上限
|
piece: 'sys.config.goods.approvalCarMaxPiece', //整车-核载件数上限
|
||||||
maxDays:'sys.config.goods.wholeLoadingMaxDays', //整车-计划装货时间上限
|
maxDays: 'sys.config.goods.wholeLoadingMaxDays', //整车-计划装货时间上限
|
||||||
intervalDays:'sys.config.goods.wholeUnloadingIntervalDays', //计划装、卸货时间间隔
|
intervalDays: 'sys.config.goods.wholeUnloadingIntervalDays', //计划装、卸货时间间隔
|
||||||
maxTimes:'sys.config.goods.wholeLoadingMaxTimes', //整车-多装多卸地点上限
|
maxTimes: 'sys.config.goods.wholeLoadingMaxTimes' //整车-多装多卸地点上限
|
||||||
}
|
};
|
||||||
public limitKeys2 = {
|
public limitKeys2 = {
|
||||||
month:'sys.config.goods.bulkEndMaxMonth', //大宗-截止时间上限
|
month: 'sys.config.goods.bulkEndMaxMonth', //大宗-截止时间上限
|
||||||
weight:'sys.config.goods.bulkMaxWeight', //大宗-重量上限
|
weight: 'sys.config.goods.bulkMaxWeight', //大宗-重量上限
|
||||||
volume:'sys.config.goods.bulkMaxVolume', //大宗-体积上限
|
volume: 'sys.config.goods.bulkMaxVolume', //大宗-体积上限
|
||||||
trainNumber:'sys.config.goods.bulkMaxTrainNumber', //大宗-车次上限
|
trainNumber: 'sys.config.goods.bulkMaxTrainNumber', //大宗-车次上限
|
||||||
freight:'sys.config.goods.bulkMaxUnitFreight', //大宗-运费单价上限
|
freight: 'sys.config.goods.bulkMaxUnitFreight' //大宗-运费单价上限
|
||||||
}
|
};
|
||||||
// 根据ItemKey获取项值
|
// 根据ItemKey获取项值
|
||||||
public $api_findItemValueByItemKeys = '/api/mdc/pbc/sysConfigItem/findItemValueByItemKeys';
|
public $api_findItemValueByItemKeys = '/api/mdc/pbc/sysConfigItem/findItemValueByItemKeys';
|
||||||
// 获取保价费信息
|
// 获取保价费信息
|
||||||
@ -163,8 +163,14 @@ export class SupplyManagementService extends BaseService {
|
|||||||
public $api_goodsResourceOperateImport = '/api/sdc/uploadGoodsResource/goodsResourceOperateImport';
|
public $api_goodsResourceOperateImport = '/api/sdc/uploadGoodsResource/goodsResourceOperateImport';
|
||||||
// 根据货主ID查询网络货运人信息
|
// 根据货主ID查询网络货运人信息
|
||||||
public $api_getNetworkTransporter = '/api/mdc/cuc/enterpriseInfo/operate/getNetworkTransporter';
|
public $api_getNetworkTransporter = '/api/mdc/cuc/enterpriseInfo/operate/getNetworkTransporter';
|
||||||
$api_verify_vehicle_status = `/api/sdc/goodsResourceShipper/saveVerify`;// 发布货源校验司机/车队长的状态
|
$api_verify_vehicle_status = `/api/sdc/goodsResourceShipper/saveVerify`; // 发布货源校验司机/车队长的状态
|
||||||
$api_get_sys_config = `/api/mdc/pbc/sysConfigItem/findConfigValues`; // 根据项key、业务id获取配置信息
|
$api_get_sys_config = `/api/mdc/pbc/sysConfigItem/findConfigValues`; // 根据项key、业务id获取配置信息
|
||||||
// 获取指派熟车列表
|
// 获取指派熟车列表
|
||||||
$api_getListCars = '/api/mdc/cuc/enterpriseVehicle/getPracticeCarList';
|
$api_getListCars = '/api/mdc/cuc/enterpriseVehicle/getPracticeCarList';
|
||||||
|
// 异步导出运营后台大宗货源列表
|
||||||
|
$api_asyncExportBulkList = '/api/sdc/goodsResourceOperate/asyncExportBulkList';
|
||||||
|
// 异步导出运营后台整车货源列表
|
||||||
|
$api_asyncExportWholeList = '/api/sdc/goodsResourceOperate/asyncExportWholeList';
|
||||||
|
// 根据货主ID查询合同签署属性
|
||||||
|
public $api_getContractAtr = '/api/mdc/cuc/enterpriseInfo/cargoOwner/getContractAtr';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -80,7 +80,7 @@ export class SettingRoleEditComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
sure() {
|
sure() {
|
||||||
if (!this.sf?.valid) {
|
if (!this.sf?.valid) {
|
||||||
this.service.msgSrv.warning('校验错误');
|
this.service.msgSrv.warning('角色名称不能为空');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const auths = this.menu?.washTree();
|
const auths = this.menu?.washTree();
|
||||||
|
|||||||
@ -38,9 +38,11 @@ export class InvoiceDetailComponent implements OnInit {
|
|||||||
routes: []
|
routes: []
|
||||||
};
|
};
|
||||||
id: any = null;
|
id: any = null;
|
||||||
|
type: any = 1;
|
||||||
constructor(public service: TicketService, private route: ActivatedRoute) {
|
constructor(public service: TicketService, private route: ActivatedRoute) {
|
||||||
this.isCanEdit = !!route.snapshot.queryParams.type;
|
this.isCanEdit = !!route.snapshot.queryParams.type;
|
||||||
const expressno = route.snapshot.queryParams.expressno;
|
const expressno = route.snapshot.queryParams.expressno;
|
||||||
|
this.type = route.snapshot.queryParams.type;
|
||||||
this.id = route.snapshot.params.id;
|
this.id = route.snapshot.params.id;
|
||||||
this.loadInvoiceHeader(this.id);
|
this.loadInvoiceHeader(this.id);
|
||||||
if (expressno) {
|
if (expressno) {
|
||||||
@ -156,7 +158,7 @@ export class InvoiceDetailComponent implements OnInit {
|
|||||||
width: 120,
|
width: 120,
|
||||||
type: 'widget',
|
type: 'widget',
|
||||||
className: 'text-right',
|
className: 'text-right',
|
||||||
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.billkpnotax }) }
|
widget: { type: 'currency-chy', params: ({ record }) => ({ value: this.type ==='2'?record.billkpmoney: record.billkpnotax }) }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '运输费',
|
title: '运输费',
|
||||||
@ -209,7 +211,7 @@ export class InvoiceDetailComponent implements OnInit {
|
|||||||
private initCostST(): STColumn[] {
|
private initCostST(): STColumn[] {
|
||||||
return [
|
return [
|
||||||
{ title: '费用号', index: 'feeHId' },
|
{ title: '费用号', index: 'feeHId' },
|
||||||
{ title: '订单号', index: 'billHId' },
|
{ title: '订单号', index: 'billHCode' },
|
||||||
{ title: '订单日期', index: 'createTime', type: 'date' },
|
{ title: '订单日期', index: 'createTime', type: 'date' },
|
||||||
{ title: '计费日期', index: 'feeDate', type: 'date' },
|
{ title: '计费日期', index: 'feeDate', type: 'date' },
|
||||||
{ title: '税率', index: 'vatrate', format: item => `${item.vatrate ? ((item.vatrate as number) * 100).toFixed(2) : 0}%` },
|
{ title: '税率', index: 'vatrate', format: item => `${item.vatrate ? ((item.vatrate as number) * 100).toFixed(2) : 0}%` },
|
||||||
|
|||||||
@ -16,10 +16,10 @@
|
|||||||
{{headerInfo?.vatappcode}}
|
{{headerInfo?.vatappcode}}
|
||||||
</se>
|
</se>
|
||||||
<se label="已开/全部订单数">
|
<se label="已开/全部订单数">
|
||||||
{{headerInfo?.vatinvBillNum}} / {{headerInfo?.ordlines}}
|
{{headerInfo?.vatinvHNum}} / {{headerInfo?.vatinvBillNum}}
|
||||||
</se>
|
</se>
|
||||||
<se label="已开/全部发票金额">
|
<se label="已开/全部发票金额">
|
||||||
{{headerInfo?.vatinvHAmount}} / {{headerInfo?.vatinvHAmount}}
|
{{headerInfo?.vatinvHAmount}} / {{headerInfo?.vatinvHNumAmount}}
|
||||||
</se>
|
</se>
|
||||||
<se label="已开发票张数">
|
<se label="已开发票张数">
|
||||||
{{headerInfo?.vatinvHNum}}
|
{{headerInfo?.vatinvHNum}}
|
||||||
@ -96,7 +96,7 @@
|
|||||||
<div class="d-flex align-items-center mb-md mt-sm" *ngIf="sts==='1'">
|
<div class="d-flex align-items-center mb-md mt-sm" *ngIf="sts==='1'">
|
||||||
<button nz-button (click)="openRequestedModal('1')">全部开票</button>
|
<button nz-button (click)="openRequestedModal('1')">全部开票</button>
|
||||||
<button nz-button (click)="openRequestedModal('2')">开票</button>
|
<button nz-button (click)="openRequestedModal('2')">开票</button>
|
||||||
<button nz-button (click)="removeOrder()">移除</button>
|
<!-- <button nz-button (click)="removeOrder()">移除</button> -->
|
||||||
<div class="ml-md">
|
<div class="ml-md">
|
||||||
已选择
|
已选择
|
||||||
<strong class="text-red">{{ selectedRows.length }}</strong> 条数据 开票金额总计 <strong
|
<strong class="text-red">{{ selectedRows.length }}</strong> 条数据 开票金额总计 <strong
|
||||||
|
|||||||
@ -242,7 +242,7 @@ export class InvoicedListComponent implements OnInit {
|
|||||||
text: '查看明细',
|
text: '查看明细',
|
||||||
click: item =>
|
click: item =>
|
||||||
this.router.navigate(['/ticket/invoice-list/detail/' + item.id], {
|
this.router.navigate(['/ticket/invoice-list/detail/' + item.id], {
|
||||||
queryParams: { expressno: item.expressno }
|
queryParams: { expressno: item.expressno, type: 2 }
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@ -94,16 +94,23 @@
|
|||||||
<input nz-input type="text" [(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser"
|
<input nz-input type="text" [(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser"
|
||||||
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
|
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="有效期起">
|
<sv label="有效期" col="1">
|
||||||
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser"
|
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
|
||||||
[nzPlaceHolder]="isEditUser?'':'-'" [nzBorderless]="!isEditUser"
|
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;" class="calendar">
|
||||||
[nzSuffixIcon]="isEditUser?'calendar':''"></nz-date-picker>
|
</nz-date-picker>
|
||||||
</sv>
|
-
|
||||||
<sv label="有效期至">
|
<ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime">
|
||||||
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" dateFormat="yyyy-MM-dd"
|
<label style="padding-left: 11px;">长期</label>
|
||||||
[nzPlaceHolder]="isEditUser?'':'-'" [nzBorderless]="!isEditUser"
|
</ng-container>
|
||||||
[nzSuffixIcon]="isEditUser?'calendar':''"></nz-date-picker>
|
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
|
||||||
|
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;" class="calendar">
|
||||||
|
</nz-date-picker>
|
||||||
|
<ng-container *ngIf="isEditUser">
|
||||||
|
<label nz-checkbox [ngModel]="!!!userIdentityDetail.validEndTime"
|
||||||
|
(ngModelChange)="$event?userIdentityDetail.validEndTime='':''" class="ml-sm">长期</label>
|
||||||
|
</ng-container>
|
||||||
</sv>
|
</sv>
|
||||||
|
|
||||||
<sv label="身份证照" col="1">
|
<sv label="身份证照" col="1">
|
||||||
<div class="d-flex">
|
<div class="d-flex">
|
||||||
<ng-container
|
<ng-container
|
||||||
@ -157,7 +164,23 @@
|
|||||||
<nz-option *ngFor="let i of contencarModel" [nzLabel]="i.label" [nzValue]="i.label"></nz-option>
|
<nz-option *ngFor="let i of contencarModel" [nzLabel]="i.label" [nzValue]="i.label"></nz-option>
|
||||||
</nz-select>
|
</nz-select>
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="有效期起">
|
<sv label="有效期" col="1">
|
||||||
|
<nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
|
||||||
|
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;" class="calendar">
|
||||||
|
</nz-date-picker>
|
||||||
|
-
|
||||||
|
<ng-container *ngIf="!isEditDriver && !driverDetail?.validEndTime && driverDetail?.validStartTime">
|
||||||
|
<label style="padding-left: 11px;">长期</label>
|
||||||
|
</ng-container>
|
||||||
|
<nz-date-picker [(ngModel)]="driverDetail.validEndTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
|
||||||
|
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;" class="calendar">
|
||||||
|
</nz-date-picker>
|
||||||
|
<ng-container *ngIf="isEditDriver">
|
||||||
|
<label nz-checkbox [ngModel]="!!!driverDetail.validEndTime"
|
||||||
|
(ngModelChange)="$event?driverDetail.validEndTime='':''" class="ml-sm">长期</label>
|
||||||
|
</ng-container>
|
||||||
|
</sv>
|
||||||
|
<!-- <sv label="有效期起">
|
||||||
<nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver"
|
<nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver"
|
||||||
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
|
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
|
||||||
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
|
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
|
||||||
@ -166,7 +189,7 @@
|
|||||||
<nz-date-picker [(ngModel)]="driverDetail.validEndTime" [nzDisabled]="!isEditDriver" dateFormat="yyyy-MM-dd"
|
<nz-date-picker [(ngModel)]="driverDetail.validEndTime" [nzDisabled]="!isEditDriver" dateFormat="yyyy-MM-dd"
|
||||||
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
|
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
|
||||||
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
|
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
|
||||||
</sv>
|
</sv> -->
|
||||||
<sv label="驾驶证签发机关" col="2">
|
<sv label="驾驶证签发机关" col="2">
|
||||||
<input nz-input type="text" [(ngModel)]="driverDetail.signingOrganization" [readonly]="!isEditDriver"
|
<input nz-input type="text" [(ngModel)]="driverDetail.signingOrganization" [readonly]="!isEditDriver"
|
||||||
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
|
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
|
||||||
@ -192,17 +215,7 @@
|
|||||||
<input nz-input type="text" [(ngModel)]="licenseDetail.licenseNo" [readonly]="!isEditDriver"
|
<input nz-input type="text" [(ngModel)]="licenseDetail.licenseNo" [readonly]="!isEditDriver"
|
||||||
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
|
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="发证日期">
|
<sv label="公司所在地" >
|
||||||
<nz-date-picker [(ngModel)]="licenseDetail.validStartTime" [nzDisabled]="!isEditDriver"
|
|
||||||
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
|
|
||||||
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
|
|
||||||
</sv>
|
|
||||||
<sv label="有效期至">
|
|
||||||
<nz-date-picker [(ngModel)]="licenseDetail.validEndTime" [nzDisabled]="!isEditDriver"
|
|
||||||
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
|
|
||||||
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
|
|
||||||
</sv>
|
|
||||||
<sv label="公司所在地" col="3">
|
|
||||||
<ng-container *ngIf="isEditDriver; else cascaderelseTemplate">
|
<ng-container *ngIf="isEditDriver; else cascaderelseTemplate">
|
||||||
<nz-select [(ngModel)]="licenseDetail.regionCode">
|
<nz-select [(ngModel)]="licenseDetail.regionCode">
|
||||||
<ng-container *ngFor="let item of adressCodeList">
|
<ng-container *ngFor="let item of adressCodeList">
|
||||||
@ -214,6 +227,24 @@
|
|||||||
{{licenseDetail?.regionCodeName }}
|
{{licenseDetail?.regionCodeName }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</sv>
|
</sv>
|
||||||
|
<sv label="发证日期" col="1">
|
||||||
|
<nz-date-picker [(ngModel)]="licenseDetail.validStartTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
|
||||||
|
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;" class="calendar">
|
||||||
|
</nz-date-picker>
|
||||||
|
-
|
||||||
|
<ng-container *ngIf="!isEditDriver && !licenseDetail?.validEndTime && licenseDetail?.validStartTime">
|
||||||
|
<label style="padding-left: 11px;">长期</label>
|
||||||
|
</ng-container>
|
||||||
|
<nz-date-picker [(ngModel)]="licenseDetail.validEndTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
|
||||||
|
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;" class="calendar">
|
||||||
|
</nz-date-picker>
|
||||||
|
<ng-container *ngIf="isEditDriver">
|
||||||
|
<label nz-checkbox [ngModel]="!!!licenseDetail.validEndTime"
|
||||||
|
(ngModelChange)="$event?licenseDetail.validEndTime='':''" class="ml-sm">长期</label>
|
||||||
|
</ng-container>
|
||||||
|
|
||||||
|
</sv>
|
||||||
|
|
||||||
<sv label="从业资格证照片" col="1">
|
<sv label="从业资格证照片" col="1">
|
||||||
<ng-container
|
<ng-container
|
||||||
*ngTemplateOutlet="uploadTemplate;context:{data:licenseDetail,status:isEditDriver,key:'certificatePhotoWatermark',key2:'certificatePhoto',hover:'licenseCertificate'}">
|
*ngTemplateOutlet="uploadTemplate;context:{data:licenseDetail,status:isEditDriver,key:'certificatePhotoWatermark',key2:'certificatePhoto',hover:'licenseCertificate'}">
|
||||||
@ -262,10 +293,10 @@
|
|||||||
<sv-container col="3" class="mt-md">
|
<sv-container col="3" class="mt-md">
|
||||||
<sv-title>银行结算信息</sv-title>
|
<sv-title>银行结算信息</sv-title>
|
||||||
<sv label="开户银行">
|
<sv label="开户银行">
|
||||||
{{ detailData?.name }}
|
{{ userIdentityDetail?.name }}
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="银行卡号">
|
<sv label="银行卡号">
|
||||||
{{ detailData?.certificateNumber }}
|
{{ userIdentityDetail?.certificateNumber }}
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
|
|
||||||
|
|||||||
@ -312,6 +312,11 @@ export class UserCenterComponentsDriverDetailComponent implements OnInit {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (!licenseDetail.licenseNo || !licenseDetail.regionCode || !licenseDetail.validStartTime) {
|
||||||
|
this.service.msgSrv.warning('请完善从业资格证信息');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const params: any = {
|
const params: any = {
|
||||||
userId: this.route.snapshot.params.id,
|
userId: this.route.snapshot.params.id,
|
||||||
mobile: this.userDetail?.phone,
|
mobile: this.userDetail?.phone,
|
||||||
@ -332,27 +337,8 @@ export class UserCenterComponentsDriverDetailComponent implements OnInit {
|
|||||||
driverDetail.validStartTime?.length === 10
|
driverDetail.validStartTime?.length === 10
|
||||||
? driverDetail.validStartTime
|
? driverDetail.validStartTime
|
||||||
: this.datePipe.transform(driverDetail.validStartTime, 'yyyy-MM-dd')
|
: this.datePipe.transform(driverDetail.validStartTime, 'yyyy-MM-dd')
|
||||||
}
|
},
|
||||||
// userPracticeSeniorityDTO: {
|
userPracticeSeniorityDTO: {
|
||||||
// appUserId: licenseDetail.appUserId || this.route.snapshot.params.id,
|
|
||||||
// approvalStatus: licenseDetail.approvalStatus,
|
|
||||||
// certificatePhoto: licenseDetail.certificatePhoto,
|
|
||||||
// certificatePhotoWatermark: licenseDetail.certificatePhotoWatermark,
|
|
||||||
// id: licenseDetail.id,
|
|
||||||
// licenseNo: licenseDetail.licenseNo,
|
|
||||||
// regionCode: licenseDetail.regionCode,
|
|
||||||
// validEndTime:
|
|
||||||
// licenseDetail.validEndTime?.length === 10
|
|
||||||
// ? licenseDetail.validEndTime
|
|
||||||
// : this.datePipe.transform(licenseDetail.validEndTime, 'yyyy-MM-dd'),
|
|
||||||
// validStartTime:
|
|
||||||
// licenseDetail.validStartTime?.length === 10
|
|
||||||
// ? licenseDetail.validStartTime
|
|
||||||
// : this.datePipe.transform(licenseDetail.validStartTime, 'yyyy-MM-dd')
|
|
||||||
// }
|
|
||||||
};
|
|
||||||
if (licenseDetail.approvalStatus && licenseDetail.licenseNo && licenseDetail.regionCode) {
|
|
||||||
params.userPracticeSeniorityDTO = {
|
|
||||||
appUserId: licenseDetail.appUserId || this.route.snapshot.params.id,
|
appUserId: licenseDetail.appUserId || this.route.snapshot.params.id,
|
||||||
approvalStatus: licenseDetail.approvalStatus,
|
approvalStatus: licenseDetail.approvalStatus,
|
||||||
certificatePhoto: licenseDetail.certificatePhoto,
|
certificatePhoto: licenseDetail.certificatePhoto,
|
||||||
@ -368,8 +354,27 @@ export class UserCenterComponentsDriverDetailComponent implements OnInit {
|
|||||||
licenseDetail.validStartTime?.length === 10
|
licenseDetail.validStartTime?.length === 10
|
||||||
? licenseDetail.validStartTime
|
? licenseDetail.validStartTime
|
||||||
: this.datePipe.transform(licenseDetail.validStartTime, 'yyyy-MM-dd')
|
: this.datePipe.transform(licenseDetail.validStartTime, 'yyyy-MM-dd')
|
||||||
};
|
}
|
||||||
}
|
};
|
||||||
|
// if (licenseDetail.approvalStatus && licenseDetail.licenseNo && licenseDetail.regionCode) {
|
||||||
|
// params.userPracticeSeniorityDTO = {
|
||||||
|
// appUserId: licenseDetail.appUserId || this.route.snapshot.params.id,
|
||||||
|
// approvalStatus: licenseDetail.approvalStatus,
|
||||||
|
// certificatePhoto: licenseDetail.certificatePhoto,
|
||||||
|
// certificatePhotoWatermark: licenseDetail.certificatePhotoWatermark,
|
||||||
|
// id: licenseDetail.id,
|
||||||
|
// licenseNo: licenseDetail.licenseNo,
|
||||||
|
// regionCode: licenseDetail.regionCode,
|
||||||
|
// validEndTime:
|
||||||
|
// licenseDetail.validEndTime?.length === 10
|
||||||
|
// ? licenseDetail.validEndTime
|
||||||
|
// : this.datePipe.transform(licenseDetail.validEndTime, 'yyyy-MM-dd'),
|
||||||
|
// validStartTime:
|
||||||
|
// licenseDetail.validStartTime?.length === 10
|
||||||
|
// ? licenseDetail.validStartTime
|
||||||
|
// : this.datePipe.transform(licenseDetail.validStartTime, 'yyyy-MM-dd')
|
||||||
|
// };
|
||||||
|
// }
|
||||||
console.log(params);
|
console.log(params);
|
||||||
this.service.request(this.service.$api_update_driver_license, params).subscribe(res => {
|
this.service.request(this.service.$api_update_driver_license, params).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
|
|||||||
@ -270,21 +270,21 @@ export class FreightConfigComponent implements OnInit {
|
|||||||
{
|
{
|
||||||
title: '货源单费率',
|
title: '货源单费率',
|
||||||
className: 'text-right',
|
className: 'text-right',
|
||||||
index: 'contractSurchargeRatio',
|
|
||||||
width: 130,
|
|
||||||
format: item => `${item.contractSurchargeRatio}%`
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: '合同单费率',
|
|
||||||
className: 'text-right',
|
|
||||||
index: 'goodsSurchargeRatio',
|
index: 'goodsSurchargeRatio',
|
||||||
width: 130,
|
width: 130,
|
||||||
format: item => `${item.goodsSurchargeRatio}%`
|
format: item => `${item.goodsSurchargeRatio}%`
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '合同单费率',
|
||||||
|
className: 'text-right',
|
||||||
|
index: 'contractSurchargeRatio',
|
||||||
|
width: 130,
|
||||||
|
format: item => `${item.contractSurchargeRatio}%`
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: '合同单业务量(元)',
|
title: '合同单业务量(元)',
|
||||||
index: 'contractQuota',
|
index: 'contractQuota',
|
||||||
width: 160,
|
width: 170,
|
||||||
type: 'widget',
|
type: 'widget',
|
||||||
className: 'text-right',
|
className: 'text-right',
|
||||||
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.contractQuota }) }
|
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.contractQuota }) }
|
||||||
@ -292,7 +292,7 @@ export class FreightConfigComponent implements OnInit {
|
|||||||
{
|
{
|
||||||
title: '货源单业务量(元)',
|
title: '货源单业务量(元)',
|
||||||
index: 'goodsQuota',
|
index: 'goodsQuota',
|
||||||
width: 160,
|
width: 170,
|
||||||
type: 'widget',
|
type: 'widget',
|
||||||
className: 'text-right',
|
className: 'text-right',
|
||||||
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.goodsQuota }) }
|
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.goodsQuota }) }
|
||||||
|
|||||||
@ -14,19 +14,17 @@ import { UserCenterComponentsDriverDetailComponent } from './components/driver/d
|
|||||||
import { UserCenterComponentsDriverConfigComponent } from './components/driver/driver-config/driver-config.component';
|
import { UserCenterComponentsDriverConfigComponent } from './components/driver/driver-config/driver-config.component';
|
||||||
import { UserCenterComponentsDriverComponent } from './components/driver/driver.component';
|
import { UserCenterComponentsDriverComponent } from './components/driver/driver.component';
|
||||||
import { FreightComponentsEnterpriseAuditComponent } from './components/freight/enterprise-audit/enterprise-audit.component';
|
import { FreightComponentsEnterpriseAuditComponent } from './components/freight/enterprise-audit/enterprise-audit.component';
|
||||||
import { FreightComponentsEnterpriseAuditViewComponent } from './components/freight/enterprise-audit/view/view.component';
|
|
||||||
import { FreightConfigComponent } from './components/freight/freight-config/freight-config.component';
|
import { FreightConfigComponent } from './components/freight/freight-config/freight-config.component';
|
||||||
import { FreightComponentsListDetailComponent } from './components/freight/list/detail/detail.component';
|
import { FreightComponentsListDetailComponent } from './components/freight/list/detail/detail.component';
|
||||||
|
|
||||||
import { FreightComponentsListComponent } from './components/freight/list/list.component';
|
import { FreightComponentsListComponent } from './components/freight/list/list.component';
|
||||||
import { FreightComponentsListNewComponent } from './components/freight/list/new/new.component';
|
import { FreightComponentsListNewComponent } from './components/freight/list/new/new.component';
|
||||||
import { FreightComponentsListViewComponent } from './components/freight/list/view/view.component';
|
|
||||||
import { FreightComponentsUserDetailComponent } from './components/freight/user/detail/detail.component';
|
import { FreightComponentsUserDetailComponent } from './components/freight/user/detail/detail.component';
|
||||||
import { FreightComponentsUserComponent } from './components/freight/user/user.component';
|
import { FreightComponentsUserComponent } from './components/freight/user/user.component';
|
||||||
|
|
||||||
const routes: Routes = [
|
const routes: Routes = [
|
||||||
{ path: 'freight/list', component: FreightComponentsListComponent, data: { guard: { ability: ['USERCENTER-FREIGHT-LIST-list'] } } },
|
{ path: 'freight/list', component: FreightComponentsListComponent, data: { guard: { ability: ['USERCENTER-FREIGHT-LIST-list'] } } },
|
||||||
{ path: 'freight/list/view/:id', component: FreightComponentsListViewComponent },
|
// { path: 'freight/list/view/:id', component: FreightComponentsListViewComponent },
|
||||||
{ path: 'freight/list/new', component: FreightComponentsListNewComponent, data: { guard: { ability: ['USERCENTER-FREIGHT-NEW-save'] } } },
|
{ path: 'freight/list/new', component: FreightComponentsListNewComponent, data: { guard: { ability: ['USERCENTER-FREIGHT-NEW-save'] } } },
|
||||||
{
|
{
|
||||||
path: 'freight/list/detail/:id',
|
path: 'freight/list/detail/:id',
|
||||||
|
|||||||
@ -12,11 +12,9 @@ import { UserCenterComponentsDriverCaptainComponent } from './components/driver/
|
|||||||
import { UserCenterComponentsDriverDetailComponent } from './components/driver/detail/detail.component';
|
import { UserCenterComponentsDriverDetailComponent } from './components/driver/detail/detail.component';
|
||||||
import { UserCenterComponentsDriverComponent } from './components/driver/driver.component';
|
import { UserCenterComponentsDriverComponent } from './components/driver/driver.component';
|
||||||
import { FreightComponentsEnterpriseAuditComponent } from './components/freight/enterprise-audit/enterprise-audit.component';
|
import { FreightComponentsEnterpriseAuditComponent } from './components/freight/enterprise-audit/enterprise-audit.component';
|
||||||
import { FreightComponentsEnterpriseAuditViewComponent } from './components/freight/enterprise-audit/view/view.component';
|
|
||||||
import { FreightComponentsListDetailComponent } from './components/freight/list/detail/detail.component';
|
import { FreightComponentsListDetailComponent } from './components/freight/list/detail/detail.component';
|
||||||
import { FreightComponentsListComponent } from './components/freight/list/list.component';
|
import { FreightComponentsListComponent } from './components/freight/list/list.component';
|
||||||
import { FreightComponentsListNewComponent } from './components/freight/list/new/new.component';
|
import { FreightComponentsListNewComponent } from './components/freight/list/new/new.component';
|
||||||
import { FreightComponentsListViewComponent } from './components/freight/list/view/view.component';
|
|
||||||
import { FreightComponentsUserDetailComponent } from './components/freight/user/detail/detail.component';
|
import { FreightComponentsUserDetailComponent } from './components/freight/user/detail/detail.component';
|
||||||
import { FreightComponentsUserComponent } from './components/freight/user/user.component';
|
import { FreightComponentsUserComponent } from './components/freight/user/user.component';
|
||||||
import { UsercenterRoutingModule } from './usercenter-routing.module';
|
import { UsercenterRoutingModule } from './usercenter-routing.module';
|
||||||
@ -29,11 +27,11 @@ import { UserCenterComponentsDriverConfigComponent } from './components/driver/d
|
|||||||
|
|
||||||
const COMPONENTS = [
|
const COMPONENTS = [
|
||||||
FreightComponentsListComponent,
|
FreightComponentsListComponent,
|
||||||
FreightComponentsListViewComponent,
|
// FreightComponentsListViewComponent,
|
||||||
FreightComponentsListNewComponent,
|
FreightComponentsListNewComponent,
|
||||||
FreightComponentsListDetailComponent,
|
FreightComponentsListDetailComponent,
|
||||||
FreightComponentsEnterpriseAuditComponent,
|
FreightComponentsEnterpriseAuditComponent,
|
||||||
FreightComponentsEnterpriseAuditViewComponent,
|
// FreightComponentsEnterpriseAuditViewComponent,
|
||||||
FreightComponentsUserComponent,
|
FreightComponentsUserComponent,
|
||||||
FreightComponentsUserDetailComponent,
|
FreightComponentsUserDetailComponent,
|
||||||
UserCenterComponentsDriverComponent,
|
UserCenterComponentsDriverComponent,
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import AMapLoader from '@amap/amap-jsapi-loader';
|
import AMapLoader from '@amap/amap-jsapi-loader';
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { ChangeDetectorRef, Component, Input, OnInit, ViewChild } from '@angular/core';
|
||||||
import { amapConf } from '@conf/amap.config';
|
import { amapConf } from '@conf/amap.config';
|
||||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { throwError } from 'rxjs';
|
import { throwError } from 'rxjs';
|
||||||
@ -27,7 +27,10 @@ export class AmapPoiPickerComponent implements OnInit {
|
|||||||
infoWindow: any;
|
infoWindow: any;
|
||||||
geocoder: any;
|
geocoder: any;
|
||||||
|
|
||||||
constructor(private modalRef: NzModalRef, private service: AmapService) {}
|
@Input()
|
||||||
|
selectedAddress!: string;
|
||||||
|
|
||||||
|
constructor(private modalRef: NzModalRef, private service: AmapService, private cdr: ChangeDetectorRef) {}
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.mapInit();
|
this.mapInit();
|
||||||
// this.PoiPicker();
|
// this.PoiPicker();
|
||||||
@ -77,12 +80,12 @@ export class AmapPoiPickerComponent implements OnInit {
|
|||||||
|
|
||||||
// 地图创建成功
|
// 地图创建成功
|
||||||
this.aMap.on('complete', () => {
|
this.aMap.on('complete', () => {
|
||||||
|
console.log('地图创建成功');
|
||||||
|
this.cdr.detectChanges();
|
||||||
this.poiPickerReady(poiPicker);
|
this.poiPickerReady(poiPicker);
|
||||||
});
|
});
|
||||||
|
|
||||||
this.aMap.on('click', (e: any) => {
|
this.aMap.on('click', (e: any) => {
|
||||||
console.log(e);
|
|
||||||
|
|
||||||
this.selectedPOI(e.lnglat);
|
this.selectedPOI(e.lnglat);
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
@ -113,12 +116,21 @@ export class AmapPoiPickerComponent implements OnInit {
|
|||||||
radius: 1000 //范围,默认:500
|
radius: 1000 //范围,默认:500
|
||||||
});
|
});
|
||||||
|
|
||||||
// 获取当前定位
|
if (this.selectedAddress) {
|
||||||
this.service.getCurrentPosition().subscribe(res => {
|
this.geocoder.getLocation(this.selectedAddress, (status: any, result: any) => {
|
||||||
if (res) {
|
if (status === 'complete' && result.info === 'OK') {
|
||||||
this.selectedPOI(res.position);
|
// result中对应详细地理坐标信息
|
||||||
}
|
this.selectedPOI(result.geocodes?.[0].location);
|
||||||
});
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// 获取当前定位
|
||||||
|
this.service.getCurrentPosition().subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.selectedPOI(res.position);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
//选取了某个POI
|
//选取了某个POI
|
||||||
poiPicker.on('poiPicked', (poiResult: any) => {
|
poiPicker.on('poiPicked', (poiResult: any) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user