车辆对接
This commit is contained in:
@ -1,22 +1,27 @@
|
||||
<!--
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 14:03:07
|
||||
* @LastEditTime: 2021-12-15 15:53:02
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Date: 2021-12-15 13:17:42
|
||||
* @LastEditTime: 2021-12-20 15:55:51
|
||||
* @LastEditors: your name
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.html
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\vehicle\update-freight\update-freight.component.html
|
||||
-->
|
||||
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
|
||||
</sf>
|
||||
<nz-spin *ngIf="!i" class="modal-spin"></nz-spin>
|
||||
<sf #sf mode="edit" [schema]="schema" [ui]="ui" [formData]="i" button="none"></sf>
|
||||
<nz-divider></nz-divider>
|
||||
<div>
|
||||
<p style="font-weight: bolder;">总运费:<span style="color: red;">¥{{gross}}</span></p>
|
||||
<p>运输费:¥{{transportation}},附加费:¥{{additional}}</p>
|
||||
<p>
|
||||
<span style="font-weight: bolder"
|
||||
>总运费:<span style="color: #dc112a">¥{{ totalPrice }}</span></span
|
||||
>
|
||||
(运输费:¥{{ tranPrice }},附加费:¥{{ otherPrice }})
|
||||
</p>
|
||||
<p>
|
||||
<label nz-checkbox [(ngModel)]="aggreechecked">确认已阅读并知晓<a>《变更协议》</a></label>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button nz-button type="button" (click)="close()">关闭</button>
|
||||
<button nz-button type="submit" nzType="primary" (click)="save(sf.value)" [disabled]="!sf.valid" [nzLoading]="http.loading"
|
||||
>确认</button
|
||||
>
|
||||
<button nz-button type="submit" nzType="primary" (click)="save(sf.value)" [disabled]="!aggreechecked">确定</button>
|
||||
</div>
|
||||
|
||||
@ -2,7 +2,7 @@ import { preloaderFinished } from '@delon/theme';
|
||||
/*
|
||||
* @Author: your name
|
||||
* @Date: 2021-12-14 14:03:07
|
||||
* @LastEditTime: 2021-12-15 15:52:36
|
||||
* @LastEditTime: 2021-12-20 15:57:37
|
||||
* @LastEditors: Please set LastEditors
|
||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
* @FilePath: \tms-obc-web\src\app\routes\order-management\modal\bulk\update-freight\update-freight.component.ts
|
||||
@ -21,6 +21,7 @@ import {
|
||||
import { _HttpClient } from '@delon/theme';
|
||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||
import { OrderManagementService } from '../../../services/order-management.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-order-management-vehicle-update-freight',
|
||||
@ -28,68 +29,140 @@ import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||
styleUrls: ['./update-freight.component.less']
|
||||
})
|
||||
export class VehicleUpdateFreightComponent implements OnInit {
|
||||
record: any = {};
|
||||
record: any;
|
||||
i: any;
|
||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||
schema: SFSchema = {};
|
||||
ui: SFUISchema = {};
|
||||
data: any = {};
|
||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public http: _HttpClient) {}
|
||||
|
||||
totalPrice = 0;
|
||||
tranPrice = 0;
|
||||
otherPrice = 0;
|
||||
|
||||
aggreechecked = false;
|
||||
constructor(private modal: NzModalRef, private msgSrv: NzMessageService, public service: OrderManagementService) {}
|
||||
|
||||
ngOnInit(): void {
|
||||
this.i = {
|
||||
prePay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'PRE')[0]?.price || 0,
|
||||
toPay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'RECE')[0]?.price || 0,
|
||||
oilCardPay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'OIL')[0]?.price || 0,
|
||||
receiptPay: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'BACK')[0]?.price || 0,
|
||||
prePayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'PRE')[0]?.paymentStatus,
|
||||
toPayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'RECE')[0]?.paymentStatus,
|
||||
oilCardPayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'OIL')[0]?.paymentStatus,
|
||||
receiptPayStatus: this.record?.mybidDetailInfo?.filter((data: any) => data.expenseCode === 'BACK')[0]?.paymentStatus
|
||||
};
|
||||
this.tranPrice = this.i.prePay + this.i.toPay + this.i.oilCardPay + this.i.receiptPay;
|
||||
this.totalPrice = this.i.prePay + this.i.toPay + this.i.oilCardPay + this.i.receiptPay + this.otherPrice;
|
||||
this.initSF();
|
||||
|
||||
if (this.record.id > 0) this.http.get(`/user/${this.record.id}`).subscribe(res => (this.i = res));
|
||||
}
|
||||
// 运输费
|
||||
get transportation () {
|
||||
console.log(this.sf?.value)
|
||||
const value = Number(this.sf?.value?.number || 0) + Number(this.sf?.value?.number2 || 0) + Number(this.sf?.value?.number3 || 0)
|
||||
console.log( value )
|
||||
return value || 0
|
||||
}
|
||||
// 总运费
|
||||
get gross () {
|
||||
const value = Number(this.transportation || 0) + Number(this.transportation || 0)
|
||||
console.log( value )
|
||||
return value || 0
|
||||
}
|
||||
// 附加费
|
||||
get additional () {
|
||||
return 100
|
||||
this.service.request(this.service.$api_get_getFreightChangeWholeDetail, { id: this.record.id}).subscribe((res) => {
|
||||
console.log(res)
|
||||
console.log(this.i)
|
||||
console.log(this.tranPrice)
|
||||
})
|
||||
}
|
||||
initSF() {
|
||||
this.schema= {
|
||||
this.schema = {
|
||||
properties: {
|
||||
number: { type: 'number',title: '预付' ,minimum: 1, maximum: 999999999, multipleOf: 1, ui: { widgetWidth: 200 } },
|
||||
number2: { type: 'number',title: '到付' ,minimum: 1, maximum: 999999999, multipleOf: 1, ui: { widgetWidth: 200 } },
|
||||
number3: { type: 'number',title: '回单付' ,minimum: 1, maximum: 999999999, multipleOf: 1, ui: { widgetWidth: 200 } },
|
||||
name3: {
|
||||
prePay: {
|
||||
type: 'number',
|
||||
title: '预付',
|
||||
default: 0.0,
|
||||
readOnly: this.i.prePayStatus !== '3',
|
||||
ui: {
|
||||
prefix: '¥',
|
||||
widgetWidth: 200,
|
||||
precision: 2,
|
||||
change: (val: any) => this.changeNumVal()
|
||||
} as SFNumberWidgetSchema
|
||||
},
|
||||
toPay: {
|
||||
type: 'number',
|
||||
title: '到付',
|
||||
default: 0.0,
|
||||
readOnly: this.i.toPayStatus !== '3',
|
||||
ui: {
|
||||
prefix: '¥',
|
||||
widgetWidth: 200,
|
||||
precision: 2,
|
||||
change: (val: any) => this.changeNumVal()
|
||||
} as SFNumberWidgetSchema
|
||||
},
|
||||
// oilCardPay: {
|
||||
// type: 'number',
|
||||
// title: '油卡',
|
||||
// default: 0.0,
|
||||
// readOnly: this.i.oilCardPayStatus === '1' || this.i.oilCardPayStatus === '3',
|
||||
// ui: {
|
||||
// prefix: '¥',
|
||||
// widgetWidth: 200,
|
||||
// precision: 2,
|
||||
// change: (val: any) => this.changeNumVal()
|
||||
// } as SFNumberWidgetSchema
|
||||
// },
|
||||
receiptPay: {
|
||||
type: 'number',
|
||||
title: '回单付',
|
||||
default: 0.0,
|
||||
readOnly: this.i.receiptPayStatus !== '3',
|
||||
ui: {
|
||||
prefix: '¥',
|
||||
widgetWidth: 200,
|
||||
precision: 2,
|
||||
change: (val: any) => this.changeNumVal()
|
||||
} as SFNumberWidgetSchema
|
||||
},
|
||||
changeCause: {
|
||||
type: 'string',
|
||||
title: '变更原因',
|
||||
maxLength: 100,
|
||||
ui: {
|
||||
widgetWidth: 300,
|
||||
placeholder:"选填,最多不超过100字",
|
||||
widget: 'textarea',
|
||||
autosize: { minRows: 3, maxRows: 6 }
|
||||
} as SFTextareaWidgetSchema
|
||||
},
|
||||
}
|
||||
},
|
||||
required: ['name3'],
|
||||
type: 'object',
|
||||
required: ['changeCause']
|
||||
};
|
||||
this.ui = { '*': { spanLabelFixed: 100, grid: { span: 16,gutter:8 } }
|
||||
this.ui = {
|
||||
'*': {
|
||||
spanLabelFixed: 100,
|
||||
grid: { span: 16 }
|
||||
}
|
||||
};
|
||||
}
|
||||
save(value: any): void {
|
||||
console.log(this.sf.value)
|
||||
console.log(value)
|
||||
console.log(this.data)
|
||||
this.http.post(`/user/${this.record.id}`, value).subscribe(res => {
|
||||
this.msgSrv.success('保存成功');
|
||||
this.modal.close(true);
|
||||
const editItems = this.record?.mybidDetailInfo.filter((data: any) => data.receiptPayStatus === '3');
|
||||
editItems.forEach((item: any) => {
|
||||
switch (item.expenseName) {
|
||||
case '预付':
|
||||
item.price = this.sf.value.prePay;
|
||||
break;
|
||||
case '到付':
|
||||
item.price = this.sf.value.toPay;
|
||||
break;
|
||||
case '回单付':
|
||||
item.price = this.sf.value.receiptPay;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
const params = {
|
||||
id: this.record?.id,
|
||||
dtos: editItems,
|
||||
changeCause: this.sf.value.changeCause
|
||||
};
|
||||
|
||||
// this.service.request(this.service.$api_insertFreightChangeWhole, params).subscribe((res: any) => {
|
||||
// if (res) {
|
||||
// this.modal.destroy();
|
||||
// } else {
|
||||
// this.service.msgSrv.error(res.msg);
|
||||
// }
|
||||
// });
|
||||
}
|
||||
|
||||
close(): void {
|
||||
@ -97,8 +170,10 @@ export class VehicleUpdateFreightComponent implements OnInit {
|
||||
}
|
||||
/**
|
||||
* 更新数字框
|
||||
* @param value
|
||||
* @param type
|
||||
*
|
||||
*/
|
||||
changeNumVal(value: any, type: number) {}
|
||||
changeNumVal() {
|
||||
this.tranPrice = this.sf.value.prePay + this.sf.value.toPay + this.sf.value.oilCardPay + this.sf.value.receiptPay;
|
||||
this.totalPrice = this.sf.value.prePay + this.sf.value.toPay + this.sf.value.oilCardPay + this.sf.value.receiptPay + this.otherPrice;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user