import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; import { STColumn } from '@delon/abc/st'; import { _HttpClient } from '@delon/theme'; import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalService } from 'ng-zorro-antd/modal'; import { SupplyManagementService } from '../../services/supply-management.service'; import { SupplyManagementVehicleAssignedCarComponent } from '../assigned-car/assigned-car.component'; import { SupplyManagementUpdateExternalSnComponent } from '../update-external-sn/update-external-sn.component'; @Component({ selector: 'app-supply-management-vehicle-detail', templateUrl: './vehicle-detail.component.html', styleUrls: ['./vehicle-detail.component.less'] }) export class SupplyManagementVehicleDetailComponent implements OnInit { id = this.route.snapshot.params.id; i: any; logColumns: STColumn[] = [ { title: '内容', index: 'theme' }, { title: '操作人', index: 'operationUserPhone' }, { title: '操作时间', index: ' createTime' }, ]; serviceType: any = { 1: '抢单', 2: '指派' } totalObj: any; attObj: any; status: any = { 1: '待接单', 2: '已接单', 3: '已取消' }; totalExpensePrice = 0; expenseColumns: STColumn[] = [ { title: '款项', width: '150px', className: 'text-center', index: 'expenseName' }, { title: '总费用(元)', width: '150px', className: 'text-center', render: 'total' }, { title: '协议金额(元)', width: '150px', className: 'text-center', render: 'price' }, ]; constructor( private route: ActivatedRoute, private msgSrv: NzMessageService, private service: SupplyManagementService, public modal: NzModalService, public router: Router ) { } ngOnInit(): void { this.getGoodsSourceDetail() } getGoodsSourceDetail() { this.service.request(this.service.$api_get_getCompleteVehicleDetail, { id: this.id }).subscribe(res => { console.log('888') console.log(this.i) const expenseList = res?.expenseVOList || []; this.totalExpensePrice = 0; this.attObj = res?.expenseVOList?.filter((data: any) => data.expenseCode === 'ATT')[0]; this.totalObj = res?.expenseVOList?.filter((data: any) => data.expenseCode === 'TOTAL')[0]; console.log(this.attObj) console.log(this.totalObj) expenseList.forEach((e: any) => { this.totalExpensePrice += e?.price * e?.rate; }); this.i = { ...res, totalExpensePrice: this.totalExpensePrice }; }) } /** * 修改货源 */ updateGoodsSource(record: any) { this.router.navigate(['/supply-management/vehicle-amend', record.id], { queryParams: { sta: 1 } }); } /** * 取消货源 */ cancleGoodsSource() { this.modal.confirm({ nzTitle: '确定取消货源吗?', nzContent: `取消后不可恢复,谨慎操作`, nzOnOk: () => this.service.request(this.service.$api_cancle_goods_source, { id: this.id }).subscribe(res => { if (res === true) { this.service.msgSrv.success('操作成功!'); this.getGoodsSourceDetail() } }) }) } /** *再下一单 * @param record */ placeOrder(record: any) { this.router.navigate(['./pbg/onecar-publish'], { queryParams: { id: record?.id, type: 'add' } }) } /** * 编辑外部货源号 * @param item st当前行对象 */ editEnternalSn(item: any) { const modalRef = this.modal.create({ nzWidth: '400px', nzContent: SupplyManagementUpdateExternalSnComponent, nzComponentParams: { orderObject: item, }, nzFooter: null, nzClosable: false }); } /** * 重新指派 */ assignedCar(item: any) { const { id } = item; console.log(id) const modalRef = this.modal.create({ nzTitle: '指派熟车', nzWidth: '1200px', nzContent: SupplyManagementVehicleAssignedCarComponent, nzComponentParams: { i: item, status: 'anew', params: { id }, url: this.service.$api_save_assign_vehicle, }, nzFooter: null, }); modalRef.afterClose.subscribe((result) => { if (result) { } }); } nextOrder(item: any) { this.router.navigate(['/supply-management/vehicle-amend', item.id], { queryParams: { sta: 2 } }); } goBack() { window.history.go(-1); } }