Merge branch 'develop'

This commit is contained in:
Taric Xin
2022-05-05 10:24:51 +08:00
11 changed files with 445 additions and 533 deletions

View File

@ -1,5 +1,5 @@
<!--
* @Description :
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-04 17:29:18
@ -13,41 +13,60 @@
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
<i nz-icon nzType="left" nzTheme="outline"></i>
</button>
</ng-template>
</page-header-wrapper>
<!-- [nzExtra]="extraTemplate" -->
<nz-card nzTitle="投诉信息" [nzExtra]="cardTemplate">
<nz-card [nzBorderless]="true" class="mb0">
<ng-template #cardTemplate>
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="viewEvaluate()" *ngIf="complaint?.complaintStatus == 1" [disabled]="complaintStatus">处理</button>
</ng-template>
<h2>投诉单号:{{datailList?.complaintCode}}</h2>
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="viewEvaluate()"
*ngIf="complaint?.complaintStatus == 1" [disabled]="complaintStatus">处理</button>
</ng-template>
<div class="mb-xs common-order-header" nz-row>
<div>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ datailList?.complaintStatusLabel }}</button>
<b class="ml-md text-md">投诉单号: : {{datailList?.complaintCode}}</b>
</div>
<div>
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="viewEvaluate()"
*ngIf="complaint?.complaintStatus == 1" [disabled]="complaintStatus">处理</button>
</div>
</div>
<nz-divider class="divider-margin"></nz-divider>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>投诉信息</span>
</div>
<!-- <h2>投诉单号:{{datailList?.complaintCode}}</h2> -->
<sf #sf [compact]="true" [ui]="ui" [schema]="schema" [button]="'none'" *ngIf="schema" [formData]="datailList">
<ng-template sf-template="imgUrls" let-schema="schema" let-item let-ui="ui">
<!-- <app-imagelist [imgList]="datailList?.imgUrls"></app-imagelist> -->
<!-- <app-imagelist [imgList]="datailList?.imgUrls"></app-imagelist> -->
<img nz-image width="100px" height="100%" *ngFor="let item of datailList?.imgUrls" [nzSrc]="item"
style="margin:0 10px 0 0" alt="" />
<img nz-image width="100px" height="100%" *ngFor="let item of datailList?.imgUrls" [nzSrc]="item"
style="margin:0 10px 0 0" alt="" />
</ng-template>
</sf>
</nz-card>
<nz-card class="dealBox" nzTitle="投诉处理">
<nz-timeline nzMode="left">
<nz-timeline-item *ngFor="let i of datailList?.processNodeVOS; let id = index" >
<div class="p mt-sm">{{i?.nodeNameLabel}}</div>
<p>
{{i?.timeLabel}}<span class="p-line">{{i?.time}}</span>
</p>
<p >
{{i?.resultLabel}}<span class="p-line">{{i?.result}}</span>
</p>
</nz-timeline-item>
</nz-timeline>
<nz-card nzTitle="投诉处理" [nzBorderless]="true" class="mb0 dealBox">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>投诉处理</span>
</div>
<nz-timeline nzMode="left">
<nz-timeline-item *ngFor="let i of datailList?.processNodeVOS; let id = index">
<div class="p mt-sm">{{i?.nodeNameLabel}}</div>
<p>
{{i?.timeLabel}}<span class="p-line">{{i?.time}}</span>
</p>
<p>
{{i?.resultLabel}}<span class="p-line">{{i?.result}}</span>
</p>
</nz-timeline-item>
</nz-timeline>
</nz-card>
<nz-modal [(nzVisible)]="isVisibleRE" [nzWidth]="600" [nzFooter]="nzModalFooterview2" (nzOnOk)="handleOK()" nzTitle="处理" (nzOnCancel)="Cancel()">
<nz-modal [(nzVisible)]="isVisibleRE" [nzWidth]="600" [nzFooter]="nzModalFooterview2" (nzOnOk)="handleOK()" nzTitle="处理"
(nzOnCancel)="Cancel()">
<ng-container *nzModalContent>
<sf #sfView [schema]="schemaView" [ui]="uiView" [compact]="true" [button]="'none'">
</sf>
@ -57,4 +76,4 @@
<button nz-button nzType="primary" (click)="handleOK()">通过</button>
<button nz-button nzType="primary" (click)="handleCancel2()">强制取消</button>
</ng-template>
</nz-modal>
</nz-modal>

View File

@ -1,5 +1,5 @@
<!--
* @Description :
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2021-12-16 10:19:08
@ -15,14 +15,27 @@
</button>
</ng-template>
</page-header-wrapper>
<nz-card nzTitle="运单信息">
<sv-container labelWidth="150" col="2">
<sv label="订单号">{{i?.billCode}}</sv>
<nz-card [nzBorderless]="true" class="mb0">
<div class="mb-xs" nz-row>
<div nz-col nzSpan="16">
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.representationsStatusLabel }}</button>
<b class="ml-md text-md">订单号 : {{ i?.billCode }}</b>
</div>
</div>
<nz-divider class="divider-margin"></nz-divider>
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>运单信息</span>
</div>
<sv-container labelWidth="100" col="3" class="new-sv-container">
<!-- <sv label="订单号">{{i?.billCode}}</sv>
<sv label="申诉状态">
<span >{{i?.representationsStatusLabel}}</span>
</sv>
<sv label="承运司机">{{i?.driverName ? i?.driverName + '/': ''}} {{i?.driverPhone ?i?.driverPhone + '/': '' }} {{i?.carNo}}</sv>
<sv label="车队长" *ngIf="i?.payeeId !== i?.driverId"> {{i?.carCaptainName ? i?.carCaptainName+ '/' : ''}}{{i?.carCaptainPhone}} </sv>
</sv> -->
<sv label="承运司机">{{i?.driverName ? i?.driverName + '/': ''}} {{i?.driverPhone ?i?.driverPhone + '/': '' }}
{{i?.carNo}}</sv>
<sv label="车队长" *ngIf="i?.payeeId !== i?.driverId"> {{i?.carCaptainName ? i?.carCaptainName+ '/' :
''}}{{i?.carCaptainPhone}} </sv>
<sv label="装货时间">{{i?.loadTime}}</sv>
<sv label="卸货时间">{{i?.unloadTime}}</sv>
<sv label="装货地">{{i?.loadingPlace}}</sv>
@ -43,8 +56,13 @@
</ng-template>
</sf>
</nz-card> -->
<nz-card nzTitle="申诉信息" >
<sf #sf [compact]="true" [ui]="ui" [schema]="schema" [button]="'none'" *ngIf="i" [formData]="i">
<nz-card [nzBorderless]="true" class="mb0">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>申诉信息</span>
</div>
<sf #sf [compact]="true" [ui]="ui" [schema]="schema" [button]="'none'" *ngIf="i" [formData]="i"
class="new-sf-container">
<ng-template sf-template="uploadVanchor" let-schema="schema" let-me let-ui="ui">
<!-- <nz-upload *ngIf="me.formProperty.value" [nzFileList]="me.formProperty.value" [nzShowButton]="false"
[nzShowUploadList]="{showRemoveIcon:false}">
@ -53,7 +71,11 @@
</ng-template>
</sf>
</nz-card>
<nz-card class="dealBox" nzTitle="申诉处理">
<nz-card [nzBorderless]="true" class="dealBox mb0">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>申诉处理</span>
</div>
<nz-timeline nzMode="left">
<nz-timeline-item [nzLabel]="item?.operatorTimestamp" nzColor="green" *ngFor="let item of logList">
<div>{{item?.operationContent}}</div>

View File

@ -31,12 +31,11 @@ export class OrderManagementRiskDetailComponent implements OnInit {
}
ngOnInit(): void {
if (this.id)
{
if (this.id) {
this.getDetail(this.id);
this.initSF();
}
}
}
initSF() {
this.schema = {
@ -77,53 +76,43 @@ export class OrderManagementRiskDetailComponent implements OnInit {
this.ui = {
'*': {
spanLabelFixed: 180,
spanLabelFixed: 100,
grid: { span: 18 },
},
$title1: {
spanLabelFixed: 0,
},
$title2: {
spanLabelFixed: 0,
},
$title3: {
spanLabelFixed: 0,
},
$unit: {
spanLabelFixed: 20,
grid: { span: 3 },
},
$uploadVanchor: {
spanLabelFixed: 180,
spanLabelFixed: 100,
grid: { span: 24 },
},
$representationsDescribe: {
grid: { span: 24 },
}
};
}
/**
* 获取详情
* @param id
*/
getDetail(id: string) {
this.service.request(this.service.$api_get_getRiskDetail, { id }).subscribe(res => {
if (res) {
this.i = Object.assign({}, res);
console.log(this.i);
let list: any = [];
this.i.fileArr.map((item: any, index: number) => {
const obj = {
uid: index,
name: '文件' + (index + 1),
status: 'done',
url: item,
};
list.push(obj);
});
this.i.uploadVanchor = list;
this.initSF();
this.getLog(this.i?.billCode);
}
})
}
/**
* 获取详情
* @param id
*/
getDetail(id: string) {
this.service.request(this.service.$api_get_getRiskDetail, { id }).subscribe(res => {
if (res) {
this.i = Object.assign({}, res);
console.log(this.i);
let list: any = [];
this.i.fileArr.map((item: any, index: number) => {
const obj = {
uid: index,
name: '文件' + (index + 1),
status: 'done',
url: item,
};
list.push(obj);
});
this.i.uploadVanchor = list;
this.initSF();
this.getLog(this.i?.billCode);
}
})
}
// getDetail(id: string) {
// this.service.request(this.service.$api_get_getRiskDetail, { id }).subscribe(res => {
@ -152,9 +141,9 @@ export class OrderManagementRiskDetailComponent implements OnInit {
goBack() {
window.history.go(-1)
}
/**
* 获取操作日志
*/
/**
* 获取操作日志
*/
getLog(operateObject: any) {
this.service.request(this.service.$api_get_risk_order_log, { operateObject, operateType: '8', size: 100 }).subscribe(res => {
this.logList = res?.records;

View File

@ -1,18 +1,6 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming
* @LastEditTime : 2022-04-24 17:13:51
* @FilePath : \\tms-obc-web\\src\\app\\routes\\usercenter\\components\\freight\\list\\list.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<!-- 页头 -->
<page-header-wrapper [title]="'企业列表'"></page-header-wrapper>
<!-- <page-header-wrapper [title]="'企业列表'"></page-header-wrapper>
<nz-card>
<!-- 搜索区 -->
<!-- 搜索表单 -->
<div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 16" [nzLg]="24" [nzSm]="24" [nzXs]="24">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
@ -32,10 +20,35 @@
</button>
</div>
</div>
</nz-card>
<nz-card [nzExtra]="extraTemplate">
<!-- 数据列表 -->
<!-- [data]="service.$api_get_supplier_page" -->
</nz-card> -->
<!-- 数据列表 -->
<!-- [data]="service.$api_get_supplier_page" -->
<nz-card class="table-box">
<div class="header_box">
<label class="page_title"> <label class="driver">|</label> 预收款余额</label>
<div class="mr-sm">
<button nz-button nzDanger [nzLoading]="loadingList" (click)="openDrawer()" acl
[acl-ability]="['USERCENTER-FREIGHT-LIST-list']">筛选</button>
<button nz-button nzDanger (click)="exportList()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-export']">
导出</button>
<button nz-button nz-dropdown [nzDropdownMenu]="menu" nzPlacement="bottomLeft">
更多<i nz-icon nzType="down" nzTheme="outline"></i></button>
<nz-dropdown-menu #menu="nzDropdownMenu">
<ul nz-menu>
<li nz-menu-item (click)="creat()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-save']">
新增企业
</li>
<li nz-menu-item (click)="editPartner()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-partner']">
修改合伙人
</li>
<li nz-menu-item (click)="editSale()" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-sale']">
修改渠道销售
</li>
</ul>
</nz-dropdown-menu>
</div>
</div>
<st #st [columns]="columns" [data]='service.$api_get_freight_list' [req]="{ process: beforeReq }"
[res]="{ process: dataProcess }" [scroll]="{ x: '1200px' }" [page]=" {}" [loading]="loadingList">
@ -78,11 +91,11 @@
</div>
</div>
</ng-template>
<ng-template #extraTemplate>
<!-- <ng-template #extraTemplate>
<div>
<button nz-button nzType="primary" (click)="editPartner()" acl [acl-ability]="['ORDER-RISK-batchAudit']"> 修改合伙人
</button>
<button nz-button nzType="primary" (click)="editSale()" acl [acl-ability]="['ORDER-RISK-batchAudit']"> 修改渠道销售
</button>
</div>
</ng-template>
</ng-template> -->

View File

@ -2,8 +2,9 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { STChange, STColumn, STColumnBadge, STComponent, STData, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
import { DynamicSettingModalComponent, ShipperBaseService } from '@shared';
import { DynamicSettingModalComponent, SearchDrawerService, ShipperBaseService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { BasicTableComponent } from 'src/app/routes/commom';
import { AccountDetailComponent } from 'src/app/shared/components/account-detail/account-detail.component';
import { UsermanageService } from '../../../services/usercenter.service';
import { EditPartnerComponentsAddComponent } from './editPartner/editPartner.component';
@ -12,15 +13,11 @@ import { ShowServiceComponent } from './showService/showservice.component';
@Component({
selector: 'app-Freight-components-list',
templateUrl: './list.component.html',
styleUrls: ['../../../../commom/less/expend-but.less']
styleUrls: ['../../../../commom/less/commom-table.less']
})
export class FreightComponentsListComponent implements OnInit {
_$expand = false;
ui!: SFUISchema;
schema!: SFSchema;
export class FreightComponentsListComponent extends BasicTableComponent implements OnInit {
columns!: STColumn[];
@ViewChild('st', { static: false }) st!: STComponent;
@ViewChild('sf', { static: false }) sf!: SFComponent;
@ViewChild('promoterModal', { static: false })
promoterModal!: any;
@ -32,8 +29,11 @@ export class FreightComponentsListComponent implements OnInit {
private modal: NzModalService,
private router: Router,
private ar: ActivatedRoute,
public shipperservice: ShipperBaseService
) {}
public shipperservice: ShipperBaseService,
public searchDrawerService: SearchDrawerService
) {
super(searchDrawerService);
}
ngOnInit() {
this.initSF();
@ -43,6 +43,10 @@ export class FreightComponentsListComponent implements OnInit {
});
}
search() {
this.st?.load(1);
}
beforeReq = (requestOptions: STRequestOptions) => {
Object.assign(requestOptions.body, { listSource: 1 });
if (this.sf) {
@ -129,9 +133,9 @@ export class FreightComponentsListComponent implements OnInit {
return this.st?.list.filter(item => item.checked) || [];
}
editPartner(record?: any) {
let status = 1
if(record) {
status = 2
let status = 1;
if (record) {
status = 2;
}
if (this.selectedRows.length <= 0 && !record) {
this.service.msgSrv.error('请选择订单!');
@ -159,9 +163,9 @@ export class FreightComponentsListComponent implements OnInit {
});
}
editSale(record?: any) {
let status = 1
if(record) {
status = 2
let status = 1;
if (record) {
status = 2;
}
if (this.selectedRows.length <= 0 && !record) {
this.service.msgSrv.error('请选择订单!');
@ -237,10 +241,7 @@ export class FreightComponentsListComponent implements OnInit {
enum: [{ label: '全部', value: '' }],
default: '',
ui: {
widget: 'select',
visibleIf: {
expand: (value: boolean) => value
}
widget: 'select'
}
},
oftenUsedServices: {
@ -253,10 +254,7 @@ export class FreightComponentsListComponent implements OnInit {
],
default: '',
ui: {
widget: 'select',
visibleIf: {
expand: (value: boolean) => value
}
widget: 'select'
}
},
customerType: {
@ -269,10 +267,7 @@ export class FreightComponentsListComponent implements OnInit {
],
default: '',
ui: {
widget: 'select',
visibleIf: {
expand: (value: boolean) => value
}
widget: 'select'
}
},
promotersTelephone: {
@ -280,10 +275,7 @@ export class FreightComponentsListComponent implements OnInit {
type: 'string',
ui: {
placeholder: '请输入',
showRequired: false,
visibleIf: {
expand: (value: boolean) => value
}
showRequired: false
}
},
partnerNamee: {
@ -291,10 +283,7 @@ export class FreightComponentsListComponent implements OnInit {
type: 'string',
ui: {
placeholder: '请输入',
showRequired: false,
visibleIf: {
expand: (value: boolean) => value
}
showRequired: false
}
},
customerServiceId: {
@ -302,10 +291,7 @@ export class FreightComponentsListComponent implements OnInit {
type: 'string',
ui: {
placeholder: '请输入',
showRequired: false,
visibleIf: {
expand: (value: boolean) => value
}
showRequired: false
}
},
approvalUserName: {
@ -313,10 +299,7 @@ export class FreightComponentsListComponent implements OnInit {
type: 'string',
ui: {
placeholder: '请输入',
showRequired: false,
visibleIf: {
expand: (value: boolean) => value
}
showRequired: false
}
},
createTime: {
@ -325,10 +308,7 @@ export class FreightComponentsListComponent implements OnInit {
ui: {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd HH:mm:ss',
nzShowTime: true,
visibleIf: {
expand: (value: boolean) => value
}
nzShowTime: true
} as SFDateWidgetSchema
},
approvalTime: {
@ -337,10 +317,7 @@ export class FreightComponentsListComponent implements OnInit {
ui: {
widget: 'sl-from-to-search',
format: 'yyyy-MM-dd HH:mm:ss',
nzShowTime: true,
visibleIf: {
expand: (value: boolean) => value
}
nzShowTime: true
} as SFDateWidgetSchema
},
lockedStatus: {
@ -353,10 +330,7 @@ export class FreightComponentsListComponent implements OnInit {
],
default: '',
ui: {
widget: 'select',
visibleIf: {
expand: (value: boolean) => value
}
widget: 'select'
}
},
source: {
@ -369,10 +343,7 @@ export class FreightComponentsListComponent implements OnInit {
],
default: '',
ui: {
widget: 'select',
visibleIf: {
expand: (value: boolean) => value
}
widget: 'select'
}
},
isExpired: {
@ -385,10 +356,7 @@ export class FreightComponentsListComponent implements OnInit {
],
default: '',
ui: {
widget: 'select',
visibleIf: {
expand: (value: boolean) => value
}
widget: 'select'
}
},
networkTransporter: {
@ -398,15 +366,11 @@ export class FreightComponentsListComponent implements OnInit {
widget: 'select',
placeholder: '请选择',
allowClear: true,
asyncData: () => this.shipperservice.getNetworkFreightForwarder(),
visibleIf: {
expand: (value: boolean) => value
}
asyncData: () => this.shipperservice.getNetworkFreightForwarder()
}
}
}
};
this.ui = { '*': { spanLabelFixed: 110, grid: { lg: 8, md: 12, sm: 12, xs: 24 }, enter: () => this.st.load() } };
}
initST() {
@ -543,10 +507,6 @@ export class FreightComponentsListComponent implements OnInit {
});
}
expandToggle() {
this._$expand = !this._$expand;
this.sf?.setValue('/expand', this._$expand);
}
creat() {
this.router.navigate(['./new'], { relativeTo: this.ar });
}
@ -566,7 +526,6 @@ export class FreightComponentsListComponent implements OnInit {
*/
resetSF() {
this.sf.reset();
this._$expand = false;
this.st.reload();
}
}

View File

@ -1,34 +1,29 @@
<!-- 页头 -->
<page-header-wrapper [logo]="logo" title="车辆详情" [content]="content" [ngClass]="{ affix: scrollTop > 210 }">
<page-header-wrapper [logo]="logo" title="车辆详情" [ngClass]="{ affix: scrollTop > 210 }">
<ng-template #logo>
<button nz-button nz-tooltip nzTooltipTitle="返回上一页" (click)="goBack()">
<i nz-icon nzType="left" nzTheme="outline"></i>
</button>
</ng-template>
<ng-template #content>
<sv-container col="3">
<sv-container col="3" class="new-sv-container">
<h2>车牌号:{{ detailData?.carNo }}</h2>
<sv-title style="font-weight: 700">
<span *ngIf="detailData?.approvalStatus === 1 || detailData?.approvalStatus === '1'">未上传</span>
<!-- <span *ngIf="detailData?.approvalStatus === 1 || detailData?.approvalStatus === '1'">未上传</span>
<span *ngIf="detailData?.approvalStatus === 0 || detailData?.approvalStatus === '0'">草稿</span>
<span *ngIf="detailData?.approvalStatus === 10 || detailData?.approvalStatus === '10'">待审核</span>
<span *ngIf="detailData?.approvalStatus === 20 || detailData?.approvalStatus === '20'">已审核</span>
<span *ngIf="detailData?.approvalStatus === 30 || detailData?.approvalStatus === '30'">已驳回</span>
<span *ngIf="detailData?.approvalStatus === 40 || detailData?.approvalStatus === '40'">证件过期</span>
<span *ngIf="detailData?.approvalStatus === 40 || detailData?.approvalStatus === '40'">证件过期</span> -->
<div style="float: right" *ngIf="detailData?.approvalStatus !== 20 && detailData?.approvalStatus !== '20'">
<ng-container *ngIf="!isEdit">
<button nz-button nzType="default" nzDanger (click)="approveDriver()" acl acl-ability="VEHICLE-AUDIT-DETAIL-pass">通过</button>
<button
nz-button
nzType="default"
nzDanger
(click)="rejectedDriver()"
acl
<button nz-button nzType="default" nzDanger (click)="approveDriver()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-pass">通过</button>
<button nz-button nzType="default" nzDanger (click)="rejectedDriver()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-reject"
*ngIf="detailData?.approvalStatus === 10 || detailData?.approvalStatus === '10'"
>驳回</button
>
<button nz-button nzType="default" nzDanger (click)="ratify()" acl acl-ability="VEHICLE-AUDIT-DETAIL-save">修改</button>
*ngIf="detailData?.approvalStatus === 10 || detailData?.approvalStatus === '10'">驳回</button>
<button nz-button nzType="default" nzDanger (click)="ratify()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-save">修改</button>
</ng-container>
<ng-container *ngIf="isEdit">
<button nz-button nzType="default" (click)="reset()">取消</button>
@ -46,329 +41,243 @@
</ng-template>
</page-header-wrapper>
<nz-card [class]="isEdit ? 'edit-box' : 'readOnly-box'">
<sv-container col="3">
<sv-title style="font-weight: 700">车辆基础信息 </sv-title>
<sv label="车牌颜色">
<nz-select
[(ngModel)]="detailData.carNoColor"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzShowArrow]="isEdit"
[nzDisabled]="!isEdit"
>
<nz-option *ngFor="let i of contenCarNoColor" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
</nz-select>
</sv>
<sv label="车型">
<!-- <nz-select [(ngModel)]="detailData.carModel" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
<nz-card [class]="isEdit ? 'edit-box' : 'readOnly-box'" [ngClass]="'mb0'" [nzBorderless]="true">
<div>
<div class="mb-xs common-order-header" nz-row>
<div>
<button nz-button nzType="primary" nzSize="small" nzDanger>{{ carStatus[detailData?.approvalStatus] }}</button>
<b class="ml-md" style="font-size: 18px">车牌号: {{ detailData?.carNo }}</b>
</div>
<div>
<ng-container *ngIf="!isEdit">
<button nz-button nzType="default" nzDanger (click)="approveDriver()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-pass">通过</button>
<button nz-button nzType="default" nzDanger (click)="rejectedDriver()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-reject"
*ngIf="detailData?.approvalStatus === 10 || detailData?.approvalStatus === '10'">驳回</button>
<button nz-button nzType="default" nzDanger (click)="ratify()" acl
acl-ability="VEHICLE-AUDIT-DETAIL-save">修改</button>
</ng-container>
<ng-container *ngIf="isEdit">
<button nz-button nzType="default" (click)="reset()">取消</button>
<button nz-button nzType="default" (click)="save()" nzDanger>保存</button>
</ng-container>
</div>
</div>
</div>
<nz-divider class="divider-margin"></nz-divider>
<div class="mb-lg">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>车辆基础信息</span>
</div>
<sv-container col="3" labelWidth="140">
<sv label="车牌颜色">
<nz-select [(ngModel)]="detailData.carNoColor" [nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option *ngFor="let i of contenCarNoColor" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
</nz-select>
</sv>
<sv label="车型">
<!-- <nz-select [(ngModel)]="detailData.carModel" [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option *ngFor="let i of contencarModel" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
</nz-select> -->
<input
nz-input
type="text"
[(ngModel)]="detailData.carModel"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="车">
<nz-select
[(ngModel)]="detailData.carLength"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzShowArrow]="isEdit"
[nzDisabled]="!isEdit"
>
<nz-option *ngFor="let i of contenCarLength" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
</nz-select>
</sv>
<sv label="车辆能源类型">
<nz-select
[(ngModel)]="detailData.carEnergyType"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzShowArrow]="isEdit"
[nzDisabled]="!isEdit"
>
<nz-option *ngFor="let i of contenCarEnergy" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
</nz-select>
</sv>
<sv label="是否为挂车">
<nz-select
[(ngModel)]="detailData.isTrailer"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzShowArrow]="isEdit"
[nzDisabled]="!isEdit"
>
<nz-option [nzValue]="false" nzLabel="否"></nz-option>
<nz-option [nzValue]="true" nzLabel="是"></nz-option>
</nz-select>
</sv>
<sv label="是否挂靠">
<nz-select
[(ngModel)]="detailData.isSelf"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzShowArrow]="isEdit"
[nzDisabled]="!isEdit"
>
<nz-option [nzValue]="false" nzLabel="否"></nz-option>
<nz-option [nzValue]="true" nzLabel="是"></nz-option>
</nz-select>
</sv>
</sv-container>
<sv-container col="1" class="mt-md">
<sv label="车头照">
<ng-container
*ngTemplateOutlet="
<input nz-input type="text" [(ngModel)]="detailData.carModel" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="车长">
<nz-select [(ngModel)]="detailData.carLength" [nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option *ngFor="let i of contenCarLength" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
</nz-select>
</sv>
<sv label="车辆能源类型">
<nz-select [(ngModel)]="detailData.carEnergyType" [nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option *ngFor="let i of contenCarEnergy" [nzLabel]="i.label" [nzValue]="i.value"></nz-option>
</nz-select>
</sv>
<sv label="是否为挂车">
<nz-select [(ngModel)]="detailData.isTrailer" [nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option [nzValue]="false" nzLabel="否"></nz-option>
<nz-option [nzValue]="true" nzLabel="是"></nz-option>
</nz-select>
</sv>
<sv label="是否挂靠">
<nz-select [(ngModel)]="detailData.isSelf" [nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option [nzValue]="false" nzLabel="否"></nz-option>
<nz-option [nzValue]="true" nzLabel="是"></nz-option>
</nz-select>
</sv>
</sv-container>
<sv-container col="1" class="mt-md" labelWidth="140">
<sv label="车头照">
<ng-container *ngTemplateOutlet="
uploadTemplate;
context: { image: detailData?.carFrontPhotoWatermark, key: 'carFrontPhotoWatermark', hover: 'PhotoWatermark2' }
"
>
</ng-container>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3">
<sv-title style="font-weight: 700">行驶证信息</sv-title>
<sv label="档案编号">
<input
nz-input
type="text"
[(ngModel)]="detailData.archivesNo"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="行驶证注册日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseRegisterTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
">
</ng-container>
</sv>
</sv-container>
</div>
<div class="mb-lg">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>行驶证信息</span>
</div>
<sv-container col="3" labelWidth="140" class="new-sv-container">
<sv label="档案编号">
<input nz-input type="text" [(ngModel)]="detailData.archivesNo" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="行驶证注册日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseRegisterTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> -->
<nz-date-picker
[(ngModel)]="detailData.driverLicenseRegisterTime"
[nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzSuffixIcon]="isEdit ? 'calendar' : ''"
></nz-date-picker>
</sv>
</sv-container>
<nz-date-picker [(ngModel)]="detailData.driverLicenseRegisterTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit ? 'calendar' : ''">
</nz-date-picker>
</sv>
</sv-container>
</div>
<sv-container col="3">
<sv label="行驶证到期日">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
<div class="mb-lg">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>行驶证信息</span>
</div>
<sv-container col="3" class="new-sv-container" labelWidth="140">
<sv label="行驶证到期日">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> -->
<nz-date-picker
[(ngModel)]="detailData.driverLicenseEndTime"
[nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzSuffixIcon]="isEdit ? 'calendar' : ''"
></nz-date-picker>
</sv>
<sv label="行驶证签发机关">
<input
nz-input
style="width: '300px'"
type="text"
[(ngModel)]="detailData.driverLicenseSigningOrg"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
</sv-container>
<nz-date-picker [(ngModel)]="detailData.driverLicenseEndTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit ? 'calendar' : ''">
</nz-date-picker>
</sv>
<sv label="行驶证签发机关">
<input nz-input style="width: '300px'" type="text" [(ngModel)]="detailData.driverLicenseSigningOrg"
[readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit ? '' : '-'" />
</sv>
</sv-container>
<sv-container col="3">
<sv label="行驶证发证日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseGetTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
<sv-container class="new-sv-container" labelWidth="140" col="3">
<sv label="行驶证发证日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.driverLicenseGetTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> -->
<nz-date-picker
[(ngModel)]="detailData.driverLicenseGetTime"
[nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzSuffixIcon]="isEdit ? 'calendar' : ''"
></nz-date-picker>
</sv>
<sv label="车辆识别代码">
<input
nz-input
type="text"
[(ngModel)]="detailData.carDistinguishCode"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="使用性质">
<nz-select
[(ngModel)]="detailData.useNature"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzShowArrow]="isEdit"
[nzDisabled]="!isEdit"
>
<nz-option [nzValue]="'1'" nzLabel="营运"></nz-option>
<nz-option [nzValue]="'0'" nzLabel="非营运"></nz-option>
</nz-select>
</sv>
</sv-container>
<nz-date-picker [(ngModel)]="detailData.driverLicenseGetTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit ? 'calendar' : ''">
</nz-date-picker>
</sv>
<sv label="车辆识别代码">
<input nz-input type="text" [(ngModel)]="detailData.carDistinguishCode" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="使用性质">
<nz-select [(ngModel)]="detailData.useNature" [nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit"
[nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option [nzValue]="'1'" nzLabel="营运"></nz-option>
<nz-option [nzValue]="'0'" nzLabel="非营运"></nz-option>
</nz-select>
</sv>
</sv-container>
<sv-container col="3">
<sv label="核定载质量(吨)">
<input
nz-input
type="text"
[(ngModel)]="detailData.carLoad"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="整备质量">
<input
nz-input
type="text"
[(ngModel)]="detailData.curbWeight"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="总质量">
<input
nz-input
type="text"
[(ngModel)]="detailData.carTotalLoad"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="所有人">
<input
nz-input
style="width: '300px'"
type="text"
[(ngModel)]="detailData.carOwner"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
</sv-container>
<sv-container col="1">
<sv label="行驶证照片">
<ng-container
*ngTemplateOutlet="
<sv-container class="new-sv-container" labelWidth="140" col="3">
<sv label="核定载质量(吨)">
<input nz-input type="text" [(ngModel)]="detailData.carLoad" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="整备质量">
<input nz-input type="text" [(ngModel)]="detailData.curbWeight" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="总质量">
<input nz-input type="text" [(ngModel)]="detailData.carTotalLoad" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="所有人">
<input nz-input style="width: '300px'" type="text" [(ngModel)]="detailData.carOwner" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit ? '' : '-'" />
</sv>
</sv-container>
<sv-container class="new-sv-container" labelWidth="140" col="1">
<sv label="行驶证照片">
<ng-container *ngTemplateOutlet="
uploadTemplate;
context: { image: detailData?.certificatePhotoFrontWatermark, key: 'certificatePhotoFrontWatermark', hover: 'FrontWatermark' }
"
>
</ng-container>
<ng-container
*ngTemplateOutlet="
">
</ng-container>
<ng-container *ngTemplateOutlet="
uploadTemplate;
context: { image: detailData?.certificatePhotoBackWatermark, key: 'certificatePhotoBackWatermark', hover: 'BackWatermark' }
"
>
</ng-container>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3" class="mt16">
<sv-title style="font-weight: 700">道路运输证信息</sv-title>
<sv label="道路运输证号">
<input
nz-input
type="text"
[(ngModel)]="detailData.roadTransportNo"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="经营许可证号">
<input
nz-input
type="text"
[(ngModel)]="detailData.roadTransportLicenceNo"
[readonly]="!isEdit"
[nzBorderless]="!isEdit"
[placeholder]="isEdit ? '' : '-'"
/>
</sv>
<sv label="发证日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportStartTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
">
</ng-container>
</sv>
</sv-container>
</div>
<div class="mb-lg">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>道路运输证信息</span>
</div>
<sv-container col="3" class="mt16 new-sv-container" labelWidth="140">
<sv label="道路运输证号">
<input nz-input type="text" [(ngModel)]="detailData.roadTransportNo" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="经营许可证号">
<input nz-input type="text" [(ngModel)]="detailData.roadTransportLicenceNo" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit ? '' : '-'" />
</sv>
<sv label="发证日期">
<!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportStartTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> -->
<nz-date-picker
[(ngModel)]="detailData.roadTransportStartTime"
[nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzSuffixIcon]="isEdit ? 'calendar' : ''"
></nz-date-picker>
</sv>
<sv label="有效期至">
<!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
<nz-date-picker [(ngModel)]="detailData.roadTransportStartTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit ? 'calendar' : ''">
</nz-date-picker>
</sv>
<sv label="有效期至">
<!-- <input nz-input type="text" [(ngModel)]="detailData.roadTransportEndTime" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> -->
<nz-date-picker
[(ngModel)]="detailData.roadTransportEndTime"
[nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'"
[nzBorderless]="!isEdit"
[nzSuffixIcon]="isEdit ? 'calendar' : ''"
></nz-date-picker>
</sv>
<sv label="道路运输证照片">
<ng-container
*ngTemplateOutlet="
<nz-date-picker [(ngModel)]="detailData.roadTransportEndTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit ? '' : '-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit ? 'calendar' : ''">
</nz-date-picker>
</sv>
<sv label="道路运输证照片">
<ng-container *ngTemplateOutlet="
uploadTemplate;
context: { image: detailData?.roadTransportPhotoWatermark, key: 'roadTransportPhotoWatermark', hover: 'Watermark' }
"
>
</ng-container>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="2" class="mt16">
<sv-title style="font-weight: 700">认证司机</sv-title>
</sv-container>
<st
#st
[bordered]="true"
[columns]="columns"
[scroll]="{x: '1200px'}"
[data]="service.$api_get_queryDriverByCarId"
[req]="{ method: 'POST', allInBody: true, params: reqParams }"
[res]="{ reName: { list: 'data', total: 'data' } }"
[ngStyle]="{ margin: '1rem 0' }"
multiSort
size="small"
[page]="{ show: false }"
>
<ng-template st-row="auditStatusEnum" let-item let-index="index">
<div>
<span *ngIf="item?.auditStatusEnum === -1 || item?.auditStatusEnum === '-1'">未上传</span>
<span *ngIf="item?.auditStatusEnum === 0 || item?.auditStatusEnum === '0'">草稿</span>
<span *ngIf="item?.auditStatusEnum === 10 || item?.auditStatusEnum === '10'">待审核</span>
<span *ngIf="item?.auditStatusEnum === 20 || item?.auditStatusEnum === '20'">已审核</span>
<span *ngIf="item?.auditStatusEnum === 30 || item?.auditStatusEnum === '30'">已驳回</span>
<span *ngIf="item?.auditStatusEnum === 40 || item?.auditStatusEnum === '40'">证件过期</span>
</div>
</ng-template>
</st>
">
</ng-container>
</sv>
</sv-container>
</div>
<div class="mb-lg">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>认证司机</span>
</div>
<st #st [bordered]="true" [columns]="columns" [scroll]="{x: '1400px'}" [data]="service.$api_get_queryDriverByCarId"
[req]="{ method: 'POST', allInBody: true, params: reqParams }" [res]="{ reName: { list: 'data', total: 'data' } }"
[ngStyle]="{ margin: '1rem 0' }" multiSort size="small" [page]="{ show: false }">
<ng-template st-row="auditStatusEnum" let-item let-index="index">
<div>
<span *ngIf="item?.auditStatusEnum === -1 || item?.auditStatusEnum === '-1'">未上传</span>
<span *ngIf="item?.auditStatusEnum === 0 || item?.auditStatusEnum === '0'">草稿</span>
<span *ngIf="item?.auditStatusEnum === 10 || item?.auditStatusEnum === '10'">待审核</span>
<span *ngIf="item?.auditStatusEnum === 20 || item?.auditStatusEnum === '20'">已审核</span>
<span *ngIf="item?.auditStatusEnum === 30 || item?.auditStatusEnum === '30'">已驳回</span>
<span *ngIf="item?.auditStatusEnum === 40 || item?.auditStatusEnum === '40'">证件过期</span>
</div>
</ng-template>
</st>
</div>
</nz-card>
<ng-template #redectModal>
<div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="120">
<div nz-col nzSpan="24" se-container [labelWidth]="140">
<se [col]="1" label="车牌号">
{{ detailData?.carNo }}
</se>
@ -380,27 +289,15 @@
</ng-template>
<ng-template #uploadTemplate let-image="image" let-key="key" let-hover="hover">
<nz-upload
class="avatar-uploader"
[nzAction]="uploadURl"
nzName="multipartFile"
nzListType="picture-card"
[nzShowUploadList]="false"
nzFileType="image/png,image/jpeg,image/jpg,image/gif"
[nzDisabled]="!isEdit || disabledUpload"
(nzChange)="changeUpload($event, key)"
>
<nz-upload class="avatar-uploader" [nzAction]="uploadURl" nzName="multipartFile" nzListType="picture-card"
[nzShowUploadList]="false" nzFileType="image/png,image/jpeg,image/jpg,image/gif"
[nzDisabled]="!isEdit || disabledUpload" (nzChange)="changeUpload($event, key)">
<ng-container *ngIf="!image && isEdit">
<i class="upload-icon" nz-icon [nzType]="false ? 'loading' : 'plus'"></i>
<div class="ant-upload-text">上传</div>
</ng-container>
<div
*ngIf="image"
(mouseover)="detailData[hover] = true"
(mouseleave)="detailData[hover] = false"
(click)="$event.cancelBubble = true"
class="image-hover"
>
<div *ngIf="image" (mouseover)="detailData[hover] = true" (mouseleave)="detailData[hover] = false"
(click)="$event.cancelBubble = true" class="image-hover">
<img (click)="showImg(image)" [src]="image" style="width: 200px; height: 160px" />
<div class="mask" *ngIf="detailData[hover] && isEdit"></div>
<div class="mask-over" *ngIf="detailData[hover] && isEdit">

View File

@ -22,7 +22,7 @@ import { fromEvent, Subscription } from 'rxjs';
templateUrl: './detail.component.html',
styleUrls: ['./detail.component.less']
})
export class VehicleComponentsAuditDetailComponent implements OnInit, OnDestroy {
export class VehicleComponentsAuditDetailComponent implements OnInit, OnDestroy {
@ViewChild('st', { static: false }) st!: STComponent;
@ViewChild('redectModal', { static: false }) redectModal!: any;
columns!: STColumn[];
@ -36,8 +36,16 @@ export class VehicleComponentsAuditDetailComponent implements OnInit, OnDestroy
approvalOpinion = '';
uploadURl = apiConf.waterFileUpload;
disabledUpload = false;
carStatus: any = {
1: '未上传',
0: '草稿',
10: '待审核',
20: '已审核',
30: '已驳回',
40: '证件过期',
}
scrollTop = 0;
subscribeScoll!: Subscription;
constructor(
@ -46,7 +54,7 @@ export class VehicleComponentsAuditDetailComponent implements OnInit, OnDestroy
private nzModalService: NzModalService,
private modal: ModalHelper,
private nzImageService: NzImageService
) {}
) { }
ngOnDestroy(): void {
this.subscribeScoll.unsubscribe();
}
@ -63,9 +71,9 @@ export class VehicleComponentsAuditDetailComponent implements OnInit, OnDestroy
initST() {
this.columns = [
{ title: '司机姓名', index: 'name', width: 150, className: 'text-center' },
{ title: '司机手机号', index: 'mobile', width: 200,className: 'text-center' },
{ title: '司机手机号', index: 'mobile', width: 200, className: 'text-center' },
{ title: '身份证号', index: 'idCardNo', width: 200, className: 'text-center' },
{ title: '挂靠协议', render: 'auditStatusEnum', width: 100,className: 'text-center' },
{ title: '挂靠协议', render: 'auditStatusEnum', width: 100, className: 'text-center' },
{
title: '车主申明/挂靠协议',
fixed: 'right',
@ -152,14 +160,14 @@ export class VehicleComponentsAuditDetailComponent implements OnInit, OnDestroy
this.detailData.roadTransportEndTime = EADateUtil.yearToDate(this.detailData?.roadTransportEndTime);
console.log(this.detailData.roadTransportStartTime)
if((this.detailData.roadTransportStartTime > this.detailData.roadTransportEndTime) || (this.detailData.driverLicenseRegisterTime > this.detailData.driverLicenseEndTime)) {
if ((this.detailData.roadTransportStartTime > this.detailData.roadTransportEndTime) || (this.detailData.driverLicenseRegisterTime > this.detailData.driverLicenseEndTime)) {
this.service.msgSrv.error('发证日期起始不能大于结束日期!')
return;
return;
}
this.service.request(this.service.$api_get_update_audit, this.detailData).subscribe(res => {
if (res) {
this.getDetailList();
this.isEdit = false;
this.isEdit = false;
this.service.msgSrv.success('修改成功!');
}
});
@ -271,14 +279,14 @@ export class VehicleComponentsAuditDetailComponent implements OnInit, OnDestroy
// this.getDetailList();
// });
console.log(item);
const params = {
imgList: [item.carProtocal],
index: 0
};
this.nzImageService.preview([{ src: item.carProtocal}]);
this.st.reload();
this.getDetailList();
const params = {
imgList: [item.carProtocal],
index: 0
};
this.nzImageService.preview([{ src: item.carProtocal }]);
this.st.reload();
this.getDetailList();
}
updateEvaluate(item: any) {
this.modal.createStatic(VehicleComponentsListEditComponent, { i: item }).subscribe(i => {

View File

@ -85,19 +85,19 @@
<ng-template #detailModal>
<div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="110" [col]="1">
<se label="异常编号">
<se label="异常编号" class="mb-sm">
{{itemInfo.exceptionCode}}
</se>
<se label="装货地">
<se label="装货地" class="mb-sm">
{{itemInfo.loadingAddressArr}}
</se>
<se label="卸货地">
<se label="卸货地" class="mb-sm">
{{itemInfo.unloadingAddressArr}}
</se>
<se label="异常信息">
<se label="异常信息" class="mb-sm">
{{itemInfo.exceptionContent}}
</se>
<se label="异常图片">
<se label="异常图片" class="mb-sm">
<div style="display: flex;">
<div *ngIf="itemInfo?.exceptionCertificateFirstFilePath" style="cursor: pointer;">
<app-imagelist [imgList]="[itemInfo?.exceptionCertificateFirstFilePath]"> </app-imagelist>
@ -111,13 +111,13 @@
</div>
</se>
<ng-container *ngIf="itemInfo.replyAppUserName">
<se label="回复内容">
<se label="回复内容" class="mb-sm">
{{itemInfo.replyContent}}
</se>
<se label="回复人">
<se label="回复人" class="mb-sm">
{{itemInfo.replyAppUserName}}
</se>
<se label="回复时间">
<se label="回复时间" class="mb-sm">
{{itemInfo.replyTime}}
</se>
</ng-container>
@ -135,4 +135,4 @@
</se>
</div>
</div>
</ng-template>
</ng-template>

View File

@ -9,7 +9,8 @@
<div style="display: flex;justify-content: space-between;">
<button nz-button (click)="destroy()">取消</button>
<div>
<button nz-button nzType="primary" (click)="search()"><i nz-icon nzType="search" nzTheme="outline"></i>查询</button>
<button nz-button nzType="primary" (click)="search()" [nzLoading]="http.loading"><i nz-icon
nzType="search" nzTheme="outline"></i>查询</button>
<button nz-button (click)="resetSF()"><i nz-icon nzType="redo" nzTheme="outline"></i>重置</button>
</div>
</div>

View File

@ -1,5 +1,6 @@
import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core';
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
import { _HttpClient } from '@delon/theme';
import { Subject } from 'rxjs';
import { SearchDrawerService } from './search-drawer.service';
@ -17,7 +18,7 @@ export class SearchDrawerComponent implements OnInit, AfterViewInit {
defaultValue = {};
constructor(public service: SearchDrawerService) {}
constructor(public service: SearchDrawerService, public http: _HttpClient) {}
ngAfterViewInit(): void {}
ngOnInit(): void {

View File

@ -31,13 +31,16 @@
&.sv__horizontal {
.sv__label-width {
justify-content: left;
}
}
}
.new-sf-container {
&.sf__horizontal .ant-form-item-label>label {
justify-content: left;
color: rgba(0, 0, 0, 0.5);
}
}