详情优化

This commit is contained in:
潘晓云
2022-05-06 10:43:55 +08:00
parent cb14f5f6cb
commit 639f780ba3
5 changed files with 717 additions and 474 deletions

View File

@ -36,10 +36,39 @@
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card [nzLoading]="service.http.loading"> <nz-card [nzLoading]="service.http.loading" [nzBorderless]="true">
<div [class]="isEditUser ? 'edit-box' : 'readOnly-box'"> <div class="mb-md">
<sv-container col="2"> <div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
<sv-title>个人信息 <div>
<a class="sign"></a>
<span>个人信息</span>
<label *ngIf="userIdentityDetail?.certificationStatus === 1" style="color: #52c41a" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="userIdentityDetail?.certificationStatus === 2" style="color: #ff4d4f" class="ml-md"><i nz-icon
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回
</label>
</div>
<div>
<ng-container *ngIf="isEditUser; else elseTemplate">
<button [nzLoading]="service.http.loading" nz-button (click)="reset()"> 取消 </button>
<button [nzLoading]="service.http.loading" nz-button nzDanger (click)="saveUser()"> 保存 </button>
</ng-container>
<ng-template #elseTemplate>
<button nz-button nzType="default" nzDanger (click)="approveUser()"
*ngIf="userIdentityDetail?.certificationStatus === 0" acl
[acl-ability]="['USERCENTER-DRIVER-CAPTAIN-DETAIL-audit']">审核通过</button>
<button nz-button nzType="default" nzDanger (click)="rejectedUser()"
*ngIf="userIdentityDetail?.certificationStatus === 0" acl
[acl-ability]="['USERCENTER-DRIVER-CAPTAIN-DETAIL-audit']">驳回审核</button>
<button nz-button nzType="default" nzDanger (click)="ratify()" acl
[acl-ability]="['USERCENTER-DRIVER-CAPTAIN-DETAIL-edit']">修改</button>
</ng-template>
</div>
</div>
<div [class]="isEditUser ? 'edit-box' : 'readOnly-box'">
<sv-container col="2">
<!-- <sv-title>个人信息
<label *ngIf="userIdentityDetail?.certificationStatus === 1" style="color: #52c41a" class="ml-md"><i nz-icon <label *ngIf="userIdentityDetail?.certificationStatus === 1" style="color: #52c41a" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过 nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label> </label>
@ -62,18 +91,18 @@
[acl-ability]="['USERCENTER-DRIVER-CAPTAIN-DETAIL-edit']">修改</button> [acl-ability]="['USERCENTER-DRIVER-CAPTAIN-DETAIL-edit']">修改</button>
</ng-template> </ng-template>
</div> </div>
</sv-title> </sv-title> -->
<sv label="姓名"> <sv label="姓名">
<input nz-input type="text" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser" <input nz-input type="text" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser ? '' : '-'" /> [nzBorderless]="!isEditUser" [placeholder]="isEditUser ? '' : '-'" />
</sv> </sv>
<sv label="身份证号"> <sv label="身份证号">
<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="身份证照" col="1"> <sv label="身份证照" col="1">
<div class="d-flex"> <div class="d-flex">
<ng-container *ngTemplateOutlet=" <ng-container *ngTemplateOutlet="
uploadTemplate; uploadTemplate;
context: { context: {
data: userIdentityDetail, data: userIdentityDetail,
@ -83,8 +112,8 @@
hover: 'certificateBackFront' hover: 'certificateBackFront'
} }
"> ">
</ng-container> </ng-container>
<ng-container *ngTemplateOutlet=" <ng-container *ngTemplateOutlet="
uploadTemplate; uploadTemplate;
context: { context: {
data: userIdentityDetail, data: userIdentityDetail,
@ -94,24 +123,33 @@
hover: 'certificateBack' hover: 'certificateBack'
} }
"> ">
</ng-container> </ng-container>
</div> </div>
</sv> </sv>
</sv-container> </sv-container>
</div>
</div> </div>
<sv-container col="3" class="mt-md"> <div>
<sv-title>银行结算信息<ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container></sv-title> <div class="font-weight-blod text-md detail-title">
<ng-container *ngFor="let item of bankList"> <a class="sign"></a>
<sv label="开户银行"> <span>银行结算信息</span>
{{ item.bankName }} <ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container>
</sv> </div>
<sv label="银行卡号"> <sv-container col="3" class="mt-md">
{{ item?.bankCardNumber }} <!-- <sv-title>银行结算信息<ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container>
</sv> </sv-title> -->
</ng-container> <ng-container *ngFor="let item of bankList">
<sv label="开户银行">
{{ item.bankName }}
</sv>
<sv label="银行卡号">
{{ item?.bankCardNumber }}
</sv>
</ng-container>
</sv-container> </sv-container>
</div>
</nz-card> </nz-card>
<ng-template #redectModal> <ng-template #redectModal>
@ -147,4 +185,4 @@
</div> </div>
</div> </div>
</nz-upload> </nz-upload>
</ng-template> </ng-template>

View File

@ -39,10 +39,60 @@
</page-header-wrapper> </page-header-wrapper>
<nz-card [nzLoading]="service.http.loading"> <nz-card [nzLoading]="service.http.loading" [nzBorderless]="true">
<div [class]="isEditUser?'edit-box':'readOnly-box'"> <div class="mb-md">
<sv-container col="2"> <div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
<sv-title>个人信息 <div>
<a class="sign"></a>
<span>个人信息</span>
<label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="userIdentityDetail?.certificationStatus===2" style="color: #ff4d4f;" class="ml-md"><i nz-icon
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回 驳回原因:{{userIdentityDetail?.certificationOpinions}}
</label>
<label *ngIf="faceStatus == 1" style="color: #bec8c8; position: relative;
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs">人脸识别结果:已发起</i>
</label>
<label *ngIf="faceStatus == 0" style="color: #bec8c8; position: relative;
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs">人脸识别结果:无</i>
</label>
<label *ngIf="faceStatus == 2" style="color: #bec8c8; position: relative;
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs">人脸识别结果:进行中</i>
</label>
<label *ngIf="faceStatus == 3" style="color: #52c41a; position: relative;
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs">人脸识别结果:已成功</i>
</label>
<label *ngIf="faceStatus == 4" style="color: #ff4d4f; position: relative;
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill"
class="mr-xs">人脸识别结果:已失败;失败原因:{{facetext}}</i>
</label>
</div>
<div style="float: right;">
<ng-container *ngIf="isEditUser; else elseTemplate">
<button [disabled]="false" nz-button (click)="reset(0)">
取消
</button>
<button [disabled]="false" nz-button nzDanger (click)="saveUser()">
保存
</button>
</ng-container>
<ng-template #elseTemplate>
<button nz-button nzType="default" nzDanger (click)="approveUser()"
*ngIf="userIdentityDetail?.certificationStatus===0" acl
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-auditUser']">审核通过</button>
<button nz-button nzType="default" nzDanger (click)="rejectedUser()"
*ngIf="userIdentityDetail?.certificationStatus===0" acl
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-auditUser']">驳回审核</button>
<button nz-button nzType="default" nzDanger (click)="ratify(0)" acl
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editUser']">修改</button>
</ng-template>
</div>
</div>
<div [class]="isEditUser?'edit-box':'readOnly-box'">
<sv-container col="2">
<!-- <sv-title>个人信息
<label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;" class="ml-md"><i nz-icon <label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过 nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label> </label>
@ -85,49 +135,82 @@
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editUser']">修改</button> [acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editUser']">修改</button>
</ng-template> </ng-template>
</div> </div>
</sv-title> </sv-title> -->
<sv label="姓名"> <sv label="姓名">
<input nz-input type="text" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser" <input nz-input type="text" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'"> [nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv> </sv>
<sv label="身份证号"> <sv label="身份证号">
<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="有效期" col="1"> <sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" " <nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;" class="calendar"> [nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;"
</nz-date-picker> class="calendar">
- </nz-date-picker>
<ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime"> -
<label style="padding-left: 11px;">长期</label> <ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime">
</ng-container> <label style="padding-left: 11px;">长期</label>
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" " </ng-container>
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;" class="calendar"> <nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
</nz-date-picker> [nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;"
<ng-container *ngIf="isEditUser"> class="calendar">
<label nz-checkbox [ngModel]="!!!userIdentityDetail.validEndTime" </nz-date-picker>
(ngModelChange)="$event?userIdentityDetail.validEndTime='':''" class="ml-sm">长期</label> <ng-container *ngIf="isEditUser">
</ng-container> <label nz-checkbox [ngModel]="!!!userIdentityDetail.validEndTime"
</sv> (ngModelChange)="$event?userIdentityDetail.validEndTime='':''" class="ml-sm">长期</label>
</ng-container>
</sv>
<sv label="身份证照" col="1"> <sv label="身份证照" col="1">
<div class="d-flex"> <div class="d-flex">
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'certificateBackFront'}"> *ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'certificateBackFront'}">
</ng-container> </ng-container>
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}"> *ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}">
</ng-container> </ng-container>
</div> </div>
</sv> </sv>
</sv-container> </sv-container>
</div>
</div> </div>
<nz-divider></nz-divider> <div class="mb-md">
<div [class]="isEditDriver?'edit-box':'readOnly-box'"> <div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
<sv-container col="3" class="mt16"> <div>
<sv-title>驾驶证信息 <a class="sign"></a>
<span>驾驶证信息</span>
<label *ngIf="driverDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="driverDetail?.approvalStatus===30" style="color: #ff4d4f;" class="ml-md"><i nz-icon
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回
</label>
</div>
<div>
<ng-container *ngIf="isEditDriver;else editDriverButton">
<button [disabled]="false" nz-button (click)="reset(1)">
取消
</button>
<button [disabled]="false" nz-button nzDanger (click)="saveDriver()">
保存
</button>
</ng-container>
<ng-template #editDriverButton>
<button *ngIf="driverDetail?.approvalStatus==10" nz-button nzType="default" nzDanger (click)="approveDriver()"
acl [acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-auditDriver']">审核通过</button>
<button *ngIf="driverDetail?.approvalStatus==10" nz-button nzType="default" nzDanger
(click)="rejectedDriver()" acl [acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-auditDriver']">驳回审核</button>
<button nz-button nzType="default" nzDanger (click)="ratify(1)" acl
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editDriver']">修改</button>
</ng-template>
</div>
</div>
<div [class]="isEditDriver?'edit-box':'readOnly-box'">
<sv-container col="3" class="mt16">
<!-- <sv-title>驾驶证信息
<label *ngIf="driverDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md"><i nz-icon <label *ngIf="driverDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过 nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label> </label>
@ -152,37 +235,37 @@
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editDriver']">修改</button> [acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editDriver']">修改</button>
</ng-template> </ng-template>
</div> </div>
</sv-title> </sv-title> -->
<sv label="驾驶证号"> <sv label="驾驶证号">
<input nz-input type="text" [(ngModel)]="driverDetail.licenseNo" [readonly]="!isEditDriver" <input nz-input type="text" [(ngModel)]="driverDetail.licenseNo" [readonly]="!isEditDriver"
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'"> [nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
</sv> </sv>
<sv label="准驾车型"> <sv label="准驾车型">
<nz-select [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="driverDetail.driverModel" nzMode="multiple" <nz-select [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="driverDetail.driverModel" nzMode="multiple"
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver" [nzShowArrow]="isEditDriver" [nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver" [nzShowArrow]="isEditDriver"
[nzDisabled]="!isEditDriver"> [nzDisabled]="!isEditDriver">
<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="有效期" col="1"> <sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" " <nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;" [nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;"
class="calendar"> class="calendar">
</nz-date-picker> </nz-date-picker>
- -
<ng-container *ngIf="!isEditDriver && !driverDetail?.validEndTime && driverDetail?.validStartTime"> <ng-container *ngIf="!isEditDriver && !driverDetail?.validEndTime && driverDetail?.validStartTime">
<label style="padding-left: 11px;">长期</label> <label style="padding-left: 11px;">长期</label>
</ng-container> </ng-container>
<nz-date-picker [(ngModel)]="driverDetail.validEndTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" " <nz-date-picker [(ngModel)]="driverDetail.validEndTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;" [nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;"
class="calendar"> class="calendar">
</nz-date-picker> </nz-date-picker>
<ng-container *ngIf="isEditDriver"> <ng-container *ngIf="isEditDriver">
<label nz-checkbox [ngModel]="!!!driverDetail.validEndTime" <label nz-checkbox [ngModel]="!!!driverDetail.validEndTime"
(ngModelChange)="$event?driverDetail.validEndTime='':''" class="ml-sm">长期</label> (ngModelChange)="$event?driverDetail.validEndTime='':''" class="ml-sm">长期</label>
</ng-container> </ng-container>
</sv> </sv>
<!-- <sv label="有效期起"> <!-- <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>
@ -192,32 +275,43 @@
[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">
<ng-container *ngIf="isEditDriver; else signingOrganizationTemplate"> <ng-container *ngIf="isEditDriver; else signingOrganizationTemplate">
<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?'':'-'">
</ng-container> </ng-container>
<ng-template #signingOrganizationTemplate> <ng-template #signingOrganizationTemplate>
{{driverDetail.signingOrganization}} {{driverDetail.signingOrganization}}
</ng-template> </ng-template>
</sv> </sv>
<sv label="驾驶证照片" col="1"> <sv label="驾驶证照片" col="1">
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:driverDetail,status:isEditDriver,key:'certificatePhotoWatermark',key2:'certificatePhoto',hover:'driverCertificate'}"> *ngTemplateOutlet="uploadTemplate;context:{data:driverDetail,status:isEditDriver,key:'certificatePhotoWatermark',key2:'certificatePhoto',hover:'driverCertificate'}">
</ng-container> </ng-container>
</sv> </sv>
</sv-container> </sv-container>
</div>
<nz-divider></nz-divider> </div>
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>从业资格证信息</span>
<label *ngIf="licenseDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md">
<i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="licenseDetail?.approvalStatus===30" style="color: #ff4d4f;" class="ml-md">
<i nz-icon nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回
</label>
</div>
<sv-container col="3" class="mt16"> <sv-container col="3" class="mt16">
<sv-title>从业资格证信息 <!-- <sv-title>从业资格证信息
<label *ngIf="licenseDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md"> <label *ngIf="licenseDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md">
<i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过 <i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label> </label>
<label *ngIf="licenseDetail?.approvalStatus===30" style="color: #ff4d4f;" class="ml-md"> <label *ngIf="licenseDetail?.approvalStatus===30" style="color: #ff4d4f;" class="ml-md">
<i nz-icon nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回 <i nz-icon nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回
</label> </label>
</sv-title> </sv-title> -->
<sv label="从业资格证号"> <sv label="从业资格证号">
<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?'':'-'">
@ -262,73 +356,95 @@
</sv-container> </sv-container>
</div> </div>
<nz-divider></nz-divider> <div class="mb-md">
<sv-container col="3" class="mt16"> <div class="font-weight-blod text-md detail-title">
<sv-title>载具信息</sv-title> <a class="sign"></a>
<ng-container *ngFor="let carDatail of carList"> <span>载具信息</span>
<sv label="车牌号"> <ng-container *ngIf="carList?.length===0">(暂无载具信息)</ng-container>
{{ carDatail?.carNo }} </div>
</sv> <sv-container col="3" class="mt16">
<sv label="车牌颜色"> <!-- <sv-title>载具信息</sv-title> -->
{{ carDatail?.carNoColorLabel }} <ng-container *ngFor="let carDatail of carList">
</sv> <sv label="车牌号">
<sv label="车型"> {{ carDatail?.carNo }}
{{ carDatail?.carModelLabel }} </sv>
</sv> <sv label="车牌颜色">
<sv label="车长"> {{ carDatail?.carNoColorLabel }}
{{ carDatail?.carLengthLabel ? carDatail?.carLengthLabel +'米' :'' }} </sv>
</sv> <sv label="车型">
<sv label="是否为当前车辆"> {{ carDatail?.carModelLabel }}
{{ carDatail?.isDefault?'是':'否' }} </sv>
</sv> <sv label="车长">
<sv label="自有载具"> {{ carDatail?.carLengthLabel ? carDatail?.carLengthLabel +'米' :'' }}
{{ carDatail?.isSelf?'否':'是' }} </sv>
</sv> <sv label="是否为当前车辆">
<sv label="行驶证照片" col="1"> {{ carDatail?.isDefault?'是':'否' }}
<app-imagelist [imgList]="[carDatail?.certificatePhotoFrontWatermark,carDatail?.certificatePhotoBackWatermark]"> </sv>
</app-imagelist> <sv label="自有载具">
</sv> {{ carDatail?.isSelf?'否':'是' }}
<sv label="道路运输证照片" col="3"> </sv>
<app-imagelist [imgList]="[carDatail?.roadTransportPhotoWatermark]"></app-imagelist> <sv label="行驶证照片" col="1">
</sv> <app-imagelist
<sv label="车头照" col="2"> [imgList]="[carDatail?.certificatePhotoFrontWatermark,carDatail?.certificatePhotoBackWatermark]">
<app-imagelist [imgList]="[carDatail?.carFrontPhotoWatermark]"></app-imagelist> </app-imagelist>
</sv> </sv>
<nz-divider></nz-divider> <sv label="道路运输证照片" col="3">
</ng-container> <app-imagelist [imgList]="[carDatail?.roadTransportPhotoWatermark]"></app-imagelist>
</sv>
<sv label="车头照" col="2">
<app-imagelist [imgList]="[carDatail?.carFrontPhotoWatermark]"></app-imagelist>
</sv>
<nz-divider></nz-divider>
</ng-container>
</sv-container> </sv-container>
</div>
<sv-container col="3" class="mt-md"> <div class="mb-md">
<sv-title>银行结算信息 <ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container> <div class="font-weight-blod text-md detail-title">
</sv-title> <a class="sign"></a>
<ng-container *ngFor="let item of bankList"> <span>银行结算信息</span>
<sv label="开户银行"> <ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container>
{{ item.bankName }} </div>
</sv> <sv-container col="3" class="mt-md">
<sv label="银行卡号"> <!-- <sv-title>银行结算信息 <ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container>
{{ item?.bankCardNumber }} </sv-title> -->
</sv> <ng-container *ngFor="let item of bankList">
</ng-container> <sv label="开户银行">
</sv-container> {{ item.bankName }}
</sv>
<nz-divider></nz-divider> <sv label="银行卡号">
<sv-container col="3" class="mt-md"> {{ item?.bankCardNumber }}
<sv-title>服务评级 </sv>
</ng-container>
</sv-container>
</div>
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>服务评级</span>
<ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-container> <ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-container>
</sv-title> </div>
<sv [label]="item.evaluateTypeLabel" *ngFor="let item of billEvaluateList"> <sv-container col="3" class="mt-md">
<nz-rate [ngModel]="item.evaluateFraction" nzDisabled></nz-rate> <!-- <sv-title>服务评级
</sv> <ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-container>
</sv-container> </sv-title> -->
<sv [label]="item.evaluateTypeLabel" *ngFor="let item of billEvaluateList">
<nz-rate [ngModel]="item.evaluateFraction" nzDisabled></nz-rate>
</sv>
</sv-container>
</div>
<sv-container col="3" class="mt-md"> <div class="mb-md">
<sv-title>关联企业</sv-title> <div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>关联企业</span>
</div>
<st #st [columns]="columns" [data]="service.$api_get_driver_projects" size="small" <st #st [columns]="columns" [data]="service.$api_get_driver_projects" size="small"
[req]="{ method: 'POST', allInBody: true, params: {appUserId:route.snapshot.params.id} }" [page]="{ show: false }" [req]="{ method: 'POST', allInBody: true, params: {appUserId:route.snapshot.params.id} }" [page]="{ show: false }"
[res]="{ reName: { list: 'data' } }" style="width: 100%;"> [res]="{ reName: { list: 'data' } }" style="width: 100%;">
</st> </st>
</sv-container> </div>
</nz-card> </nz-card>
@ -383,4 +499,4 @@
</div> </div>
</div> </div>
</nz-upload> </nz-upload>
</ng-template> </ng-template>

View File

@ -114,10 +114,11 @@
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card [class]="isEdit?'edit-box':'readOnly-box'"> <nz-card [class]="isEdit?'edit-box':'readOnly-box'" [nzBorderless]="true">
<sv-container col="2" class="mt16"> <div class="mb-md">
<sv-title> <div class="font-weight-blod text-md detail-title">
<label class="mr-md">企业基本信息</label> <a class="sign"></a>
<span class="mr-xs">企业基本信息</span>
<label *ngIf="detailData?.approvalStatus===10" style="color: #1890ff;"><i nz-icon nzType="info-circle" <label *ngIf="detailData?.approvalStatus===10" style="color: #1890ff;"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>待审核 nzTheme="fill" class="mr-xs"></i>待审核
</label> </label>
@ -130,251 +131,296 @@
<label *ngIf="detailData?.isExpired" style="color: #fa8c16;"> <label *ngIf="detailData?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期 <i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
</label> </label>
<p style="margin-bottom: 0;"> </div>
四要素验证:
<label *ngIf="detailData?.esignCheckStatus===0" style="color: #ff4d4f;"><i nz-icon nzType="info-circle" <sv-container col="2" class="mt16">
nzTheme="fill" class="mr-xs"></i>不通过&nbsp;&nbsp;驳回原因:{{detailData?.esignCheckMsg}} <sv-title>
</label> <!-- <label class="mr-md">企业基本信息</label>
<label *ngIf="detailData?.esignCheckStatus===1" style="color: #52c41a;"><i nz-icon nzType="check-circle" <label *ngIf="detailData?.approvalStatus===10" style="color: #1890ff;"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>通过 nzTheme="fill" class="mr-xs"></i>待审核
</label> </label>
<label *ngIf="detailData?.esignCheckStatus===2" style="color: #1890ff;"><i nz-icon nzType="close-circle" <label *ngIf="detailData?.approvalStatus===20" style="color: #52c41a;"><i nz-icon nzType="check-circle"
nzTheme="fill" class="mr-xs"></i>未认证:&nbsp;&nbsp;{{detailData?.esignCheckMsg}} nzTheme="fill" class="mr-xs"></i>审核通过
</label> </label>
</p> <label *ngIf="detailData?.approvalStatus===30" style="color: #ff4d4f;"><i nz-icon nzType="close-circle"
</sv-title> nzTheme="fill" class="mr-xs"></i>驳回&nbsp;驳回原因:{{detailData?.approvalOpinion}}
<sv label="公司名称"> </label>
<ng-container *ngIf="isEdit; else enterpriseNameelseTemplate"> <label *ngIf="detailData?.isExpired" style="color: #fa8c16;">
<input nz-input type="text" [(ngModel)]="detailData.enterpriseName" [readonly]="!isEdit" <i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> </label> -->
</ng-container> <p style="margin-bottom: 0;">
<ng-template #enterpriseNameelseTemplate> 四要素验证:
<span style="word-break:break-all ">{{detailData.enterpriseName}}</span> <label *ngIf="detailData?.esignCheckStatus===0" style="color: #ff4d4f;"><i nz-icon nzType="info-circle"
</ng-template> nzTheme="fill" class="mr-xs"></i>不通过&nbsp;&nbsp;驳回原因:{{detailData?.esignCheckMsg}}
</sv> </label>
<sv label="统一社会信用代码"> <label *ngIf="detailData?.esignCheckStatus===1" style="color: #52c41a;"><i nz-icon nzType="check-circle"
<ng-container *ngIf="isEdit; else unifiedSocialCreditCodeelseTemplate"> nzTheme="fill" class="mr-xs"></i>通过
<input nz-input type="text" [(ngModel)]="detailData.unifiedSocialCreditCode" [readonly]="!isEdit" </label>
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> <label *ngIf="detailData?.esignCheckStatus===2" style="color: #1890ff;"><i nz-icon nzType="close-circle"
</ng-container> nzTheme="fill" class="mr-xs"></i>未认证:&nbsp;&nbsp;{{detailData?.esignCheckMsg}}
<ng-template #unifiedSocialCreditCodeelseTemplate> </label>
{{detailData.unifiedSocialCreditCode}} </p>
</ng-template> </sv-title>
</sv> <sv label="公司名称">
<sv label="公司类型"> <ng-container *ngIf="isEdit; else enterpriseNameelseTemplate">
<!-- <input nz-input type="text" [(ngModel)]="detailData.enterpriseType" [readonly]="!isEdit" [nzBorderless]="!isEdit" <input nz-input type="text" [(ngModel)]="detailData.enterpriseName" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #enterpriseNameelseTemplate>
<span style="word-break:break-all ">{{detailData.enterpriseName}}</span>
</ng-template>
</sv>
<sv label="统一社会信用代码">
<ng-container *ngIf="isEdit; else unifiedSocialCreditCodeelseTemplate">
<input nz-input type="text" [(ngModel)]="detailData.unifiedSocialCreditCode" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #unifiedSocialCreditCodeelseTemplate>
{{detailData.unifiedSocialCreditCode}}
</ng-template>
</sv>
<sv label="公司类型">
<!-- <input nz-input type="text" [(ngModel)]="detailData.enterpriseType" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> --> [placeholder]="isEdit?'':'-'"> -->
<nz-select [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="detailData.enterpriseType" <nz-select [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="detailData.enterpriseType"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzShowArrow]="isEdit" [nzDisabled]="!isEdit"> [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option nzLabel="物流企业" [nzValue]="1"></nz-option> <nz-option nzLabel="物流企业" [nzValue]="1"></nz-option>
<nz-option nzLabel="货运代理" [nzValue]="2"></nz-option> <nz-option nzLabel="货运代理" [nzValue]="2"></nz-option>
<nz-option nzLabel="生产型企业" [nzValue]="3"></nz-option> <nz-option nzLabel="生产型企业" [nzValue]="3"></nz-option>
<nz-option nzLabel="贸易类企业" [nzValue]="4"></nz-option> <nz-option nzLabel="贸易类企业" [nzValue]="4"></nz-option>
<nz-option nzLabel="科技型企业" [nzValue]="5"></nz-option> <nz-option nzLabel="科技型企业" [nzValue]="5"></nz-option>
<nz-option nzLabel="化学化工企业" [nzValue]="6"></nz-option> <nz-option nzLabel="化学化工企业" [nzValue]="6"></nz-option>
<nz-option nzLabel="其他" [nzValue]="7"></nz-option> <nz-option nzLabel="其他" [nzValue]="7"></nz-option>
</nz-select>
</sv>
<sv label="注册资本">
<ng-container *ngIf="isEdit; else registrationCapitalTemplate">
<input nz-input type="text" [(ngModel)]="detailData.registrationCapital" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'" class="mr-sm">
</ng-container>
<ng-template #registrationCapitalTemplate>
{{detailData?.registrationCapital}}
</ng-template>
<span *ngIf="detailData?.registrationCapital">万元</span>
</sv>
<sv label="成立日期">
<nz-date-picker [(ngModel)]="detailData.enterpriseRegistrationTime" [nzDisabled]="!isEdit"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''"></nz-date-picker>
</sv>
<sv label="营业期限">
<nz-date-picker [(ngModel)]="detailData.operatingStartTime" [nzDisabled]="!isEdit" nzPlaceHolder=" "
[nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 110px;" class="calendar">
</nz-date-picker>
-
<ng-container *ngIf="!isEdit && !detailData?.operatingEndTime && detailData?.operatingStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<nz-date-picker [(ngModel)]="detailData.operatingEndTime" [nzDisabled]="!isEdit" nzPlaceHolder=" "
[nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 110px;" class="calendar">
</nz-date-picker>
<ng-container *ngIf="isEdit">
<label nz-checkbox [ngModel]="!!!detailData.operatingEndTime"
(ngModelChange)="$event?detailData.operatingEndTime='':''" class="ml-sm">长期</label>
</ng-container>
</sv>
<sv label="常用服务">
<ng-container *ngIf="isEdit; else oftenUsedServiceselseTemplate">
<nz-select [(ngModel)]="detailData.oftenUsedServices">
<nz-option [nzValue]="10" nzLabel="整车发货"></nz-option>
<nz-option [nzValue]="20" nzLabel="大宗发货"></nz-option>
</nz-select> </nz-select>
</ng-container> </sv>
<ng-template #oftenUsedServiceselseTemplate> <sv label="注册资本">
<input nz-input type="text" <ng-container *ngIf="isEdit; else registrationCapitalTemplate">
[ngModel]="detailData.oftenUsedServices?detailData.oftenUsedServices===10?'整车发货':'大宗发货':'-'" <input nz-input type="text" [(ngModel)]="detailData.registrationCapital" [readonly]="!isEdit"
[readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'" class="mr-sm">
</ng-template> </ng-container>
</sv> <ng-template #registrationCapitalTemplate>
<sv label="公司所在地" col="3"> {{detailData?.registrationCapital}}
<ng-container *ngIf="isEdit; else cascaderelseTemplate"> </ng-template>
<nz-cascader [(ngModel)]="enterpriseAddressCode" [nzLoadData]="loadRegionData"> <span *ngIf="detailData?.registrationCapital">万元</span>
</nz-cascader> </sv>
</ng-container> <sv label="成立日期">
<ng-template #cascaderelseTemplate> <nz-date-picker [(ngModel)]="detailData.enterpriseRegistrationTime" [nzDisabled]="!isEdit"
{{ detailData?.fullRegionVO?.provinceName }}{{ detailData?.fullRegionVO?.cityName }}{{ [nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''">
detailData?.fullRegionVO?.areaName }} </nz-date-picker>
</ng-template> </sv>
</sv> <sv label="营业期限">
<sv label="公司详细地址" col="2"> <nz-date-picker [(ngModel)]="detailData.operatingStartTime" [nzDisabled]="!isEdit" nzPlaceHolder=" "
<ng-container *ngIf="isEdit; else enterpriseAddresselseTemplate"> [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 110px;" class="calendar">
<input nz-input type="text" [(ngModel)]="detailData.enterpriseAddress" [readonly]="!isEdit" </nz-date-picker>
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> -
</ng-container> <ng-container *ngIf="!isEdit && !detailData?.operatingEndTime && detailData?.operatingStartTime">
<ng-template #enterpriseAddresselseTemplate> <label style="padding-left: 11px;">长期</label>
<span style="word-break:break-all "> {{ detailData?.fullRegionVO?.provinceName }}{{ </ng-container>
detailData?.fullRegionVO?.cityName }}{{ <nz-date-picker [(ngModel)]="detailData.operatingEndTime" [nzDisabled]="!isEdit" nzPlaceHolder=" "
detailData?.fullRegionVO?.areaName }}{{detailData.enterpriseAddress}}</span> [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 110px;" class="calendar">
</ng-template> </nz-date-picker>
</sv> <ng-container *ngIf="isEdit">
<sv label="经营范围" col="1"> <label nz-checkbox [ngModel]="!!!detailData.operatingEndTime"
<ng-container *ngIf="isEdit; else businessScopeelseTemplate"> (ngModelChange)="$event?detailData.operatingEndTime='':''" class="ml-sm">长期</label>
<input nz-input type="text" [(ngModel)]="detailData.businessScope" [readonly]="!isEdit" [nzBorderless]="!isEdit" </ng-container>
</sv>
<sv label="常用服务">
<ng-container *ngIf="isEdit; else oftenUsedServiceselseTemplate">
<nz-select [(ngModel)]="detailData.oftenUsedServices">
<nz-option [nzValue]="10" nzLabel="整车发货"></nz-option>
<nz-option [nzValue]="20" nzLabel="大宗发货"></nz-option>
</nz-select>
</ng-container>
<ng-template #oftenUsedServiceselseTemplate>
<input nz-input type="text"
[ngModel]="detailData.oftenUsedServices?detailData.oftenUsedServices===10?'整车发货':'大宗发货':'-'"
[readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-template>
</sv>
<sv label="公司所在地" col="3">
<ng-container *ngIf="isEdit; else cascaderelseTemplate">
<nz-cascader [(ngModel)]="enterpriseAddressCode" [nzLoadData]="loadRegionData">
</nz-cascader>
</ng-container>
<ng-template #cascaderelseTemplate>
{{ detailData?.fullRegionVO?.provinceName }}{{ detailData?.fullRegionVO?.cityName }}{{
detailData?.fullRegionVO?.areaName }}
</ng-template>
</sv>
<sv label="公司详细地址" col="2">
<ng-container *ngIf="isEdit; else enterpriseAddresselseTemplate">
<input nz-input type="text" [(ngModel)]="detailData.enterpriseAddress" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #enterpriseAddresselseTemplate>
<span style="word-break:break-all "> {{ detailData?.fullRegionVO?.provinceName }}{{
detailData?.fullRegionVO?.cityName }}{{
detailData?.fullRegionVO?.areaName }}{{detailData.enterpriseAddress}}</span>
</ng-template>
</sv>
<sv label="经营范围" col="1">
<ng-container *ngIf="isEdit; else businessScopeelseTemplate">
<input nz-input type="text" [(ngModel)]="detailData.businessScope" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #businessScopeelseTemplate>
<span style="word-break:break-all ">{{detailData.businessScope}}</span>
</ng-template>
</sv>
<sv label="税务机关" col="3">
<input nz-input type="text" [(ngModel)]="detailData.taxAuthority" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'"> [placeholder]="isEdit?'':'-'">
</ng-container> </sv>
<ng-template #businessScopeelseTemplate> <sv label="营业执照" col="3">
<span style="word-break:break-all ">{{detailData.businessScope}}</span> <ng-container
</ng-template> *ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'licensePhotoWatermark',key2:'licensePhoto',hover:'detailPhoto'}">
</sv> </ng-container>
<sv label="税务机关" col="3"> </sv>
<input nz-input type="text" [(ngModel)]="detailData.taxAuthority" [readonly]="!isEdit" [nzBorderless]="!isEdit" <sv label="企业授权函" col="3">
[placeholder]="isEdit?'':'-'"> <ng-container
</sv> *ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'creditPhotoWatermark',key2:'creditPhoto',hover:'adminPhoto'}">
<sv label="营业执照" col="3"> </ng-container>
<ng-container </sv>
*ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'licensePhotoWatermark',key2:'licensePhoto',hover:'detailPhoto'}"> </sv-container>
</ng-container> </div>
</sv> <div class="mb-md">
<sv label="企业授权函" col="3"> <div class="font-weight-blod text-md detail-title">
<ng-container <a class="sign"></a>
*ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'creditPhotoWatermark',key2:'creditPhoto',hover:'adminPhoto'}"> <span>法人信息</span>
</ng-container>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3" class="mt16">
<sv-title>法人信息
<label *ngIf="detailData?.legalPersonIdentityVO?.isExpired" style="color: #fa8c16;"> <label *ngIf="detailData?.legalPersonIdentityVO?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>法人身份证期限已过期 <i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>法人身份证期限已过期
</label> </label>
</sv-title> </div>
<sv label="法定代表人"> <sv-container col="3" class="mt16">
<input nz-input type="text" maxlength="32" [(ngModel)]="detailData.legalPersonIdentityVO.name" <!-- <sv-title>法人信息
[readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> <label *ngIf="detailData?.legalPersonIdentityVO?.isExpired" style="color: #fa8c16;">
</sv> <i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>法人身份证期限已过期
<sv label="身份证号码"> </label>
<input nz-input type="text" [(ngModel)]="detailData.legalPersonIdentityVO.certificateNumber" [readonly]="!isEdit" </sv-title> -->
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> <sv label="法定代表人">
</sv> <input nz-input type="text" maxlength="32" [(ngModel)]="detailData.legalPersonIdentityVO.name"
<sv label="身份证有效期" col="1"> [readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
<nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validStartTime" [nzDisabled]="!isEdit" </sv>
nzPlaceHolder=" " [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 120px;" <sv label="身份证号码">
class="calendar"></nz-date-picker> <input nz-input type="text" [(ngModel)]="detailData.legalPersonIdentityVO.certificateNumber"
- [readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
<ng-container </sv>
*ngIf="!isEdit && !detailData?.legalPersonIdentityVO?.validEndTime && detailData.legalPersonIdentityVO.validStartTime"> <sv label="身份证有效期" col="1">
<label style="padding-left: 11px;">长期</label> <nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validStartTime" [nzDisabled]="!isEdit"
</ng-container> nzPlaceHolder=" " [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 120px;"
<nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validEndTime" [nzDisabled]="!isEdit" class="calendar"></nz-date-picker>
nzPlaceHolder=" " [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 120px;" -
class="calendar"></nz-date-picker>
<ng-container *ngIf="isEdit">
<label nz-checkbox [ngModel]="!!!detailData.legalPersonIdentityVO.validEndTime"
(ngModelChange)="$event?detailData.legalPersonIdentityVO.validEndTime='':''" class="ml-sm">长期</label>
</ng-container>
</sv>
<sv label="身份证照" col="1">
<div class="d-flex">
<ng-container <ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.legalPersonIdentityVO,status:isEdit,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'legalFront'}"> *ngIf="!isEdit && !detailData?.legalPersonIdentityVO?.validEndTime && detailData.legalPersonIdentityVO.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container> </ng-container>
<ng-container <nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validEndTime" [nzDisabled]="!isEdit"
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.legalPersonIdentityVO,status:isEdit,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'legalBack'}"> nzPlaceHolder=" " [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 120px;"
class="calendar"></nz-date-picker>
<ng-container *ngIf="isEdit">
<label nz-checkbox [ngModel]="!!!detailData.legalPersonIdentityVO.validEndTime"
(ngModelChange)="$event?detailData.legalPersonIdentityVO.validEndTime='':''" class="ml-sm">长期</label>
</ng-container> </ng-container>
</div> </sv>
</sv> <sv label="身份证照" col="1">
</sv-container> <div class="d-flex">
<nz-divider></nz-divider> <ng-container
<sv-container col="3"> *ngTemplateOutlet="uploadTemplate;context:{data:detailData?.legalPersonIdentityVO,status:isEdit,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'legalFront'}">
<sv-title>企业管理员信息 </ng-container>
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.legalPersonIdentityVO,status:isEdit,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'legalBack'}">
</ng-container>
</div>
</sv>
</sv-container>
</div>
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>企业管理员信息</span>
<label *ngIf="detailData?.adminUserInfo?.isExpired" style="color: #fa8c16;"> <label *ngIf="detailData?.adminUserInfo?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期 <i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
</label> </label>
</sv-title> </div>
<sv label="姓名"> <sv-container col="3">
<input nz-input type="text" [(ngModel)]="detailData.adminUserInfo.name" [readonly]="!isEdit" <!-- <sv-title>企业管理员信息
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> <label *ngIf="detailData?.adminUserInfo?.isExpired" style="color: #fa8c16;">
</sv> <i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
<sv label="手机号"> </label>
{{detailData.adminUserInfo?.mobile}} </sv-title> -->
</sv> <sv label="姓名">
<sv label="身份证号"> <input nz-input type="text" [(ngModel)]="detailData.adminUserInfo.name" [readonly]="!isEdit"
<input nz-input type="text" [(ngModel)]="detailData.adminUserInfo.certificateNumber" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv>
<sv label="身份证照" col="2">
<div class="d-flex">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.adminUserInfo,status:isEdit,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'certificateBackFront'}">
</ng-container>
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.adminUserInfo,status:isEdit,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}">
</ng-container>
</div>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3" class="mt16">
<sv-title>企业开票信息</sv-title>
<sv label="开户银行">
<ng-container *ngIf="isEdit; else createBankTemplate">
<input nz-input type="text" [(ngModel)]="detailData.createBank" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #createBankTemplate>
{{detailData.createBank}}
</ng-template>
</sv>
<sv label="银行账户">
<input nz-input type="text" [(ngModel)]="detailData.bankAccount" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'">
</sv>
<sv label="注册电话">
<input nz-input type="text" [(ngModel)]="detailData.registerPhone" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'">
</sv>
<sv label="注册地址">
<ng-container *ngIf="isEdit; else registerAddressTemplate">
<input nz-input type="text" [(ngModel)]="detailData.registerAddress" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container> </sv>
<ng-template #registerAddressTemplate> <sv label="手机号">
{{detailData.registerAddress}} {{detailData.adminUserInfo?.mobile}}
</ng-template> </sv>
</sv> <sv label="身份证号">
</sv-container> <input nz-input type="text" [(ngModel)]="detailData.adminUserInfo.certificateNumber" [readonly]="!isEdit"
<nz-divider></nz-divider> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
<sv-container col="3" class="mt-md"> </sv>
<sv-title>服务评级 <sv label="身份证照" col="2">
<div class="d-flex">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.adminUserInfo,status:isEdit,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'certificateBackFront'}">
</ng-container>
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.adminUserInfo,status:isEdit,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}">
</ng-container>
</div>
</sv>
</sv-container>
</div>
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>企业开票信息</span>
</div>
<sv-container col="3" class="mt16">
<!-- <sv-title>企业开票信息</sv-title> -->
<sv label="开户银行">
<ng-container *ngIf="isEdit; else createBankTemplate">
<input nz-input type="text" [(ngModel)]="detailData.createBank" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #createBankTemplate>
{{detailData.createBank}}
</ng-template>
</sv>
<sv label="银行账户">
<input nz-input type="text" [(ngModel)]="detailData.bankAccount" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'">
</sv>
<sv label="注册电话">
<input nz-input type="text" [(ngModel)]="detailData.registerPhone" [readonly]="!isEdit" [nzBorderless]="!isEdit"
[placeholder]="isEdit?'':'-'">
</sv>
<sv label="注册地址">
<ng-container *ngIf="isEdit; else registerAddressTemplate">
<input nz-input type="text" [(ngModel)]="detailData.registerAddress" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #registerAddressTemplate>
{{detailData.registerAddress}}
</ng-template>
</sv>
</sv-container>
</div>
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>服务评级</span>
<ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-container> <ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-container>
</sv-title> </div>
<sv [label]="item.evaluateTypeLabel" *ngFor="let item of billEvaluateList"> <sv-container col="3" class="mt-md">
<nz-rate [ngModel]="item.evaluateFraction" nzDisabled></nz-rate> <!-- <sv-title>服务评级
</sv> <ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-container>
</sv-container> </sv-title> -->
<sv [label]="item.evaluateTypeLabel" *ngFor="let item of billEvaluateList">
<nz-rate [ngModel]="item.evaluateFraction" nzDisabled></nz-rate>
</sv>
</sv-container>
</div>
<!-- <nz-divider></nz-divider> --> <!-- <nz-divider></nz-divider> -->
<!-- <sv-container col="3" class="mt16"> <!-- <sv-container col="3" class="mt16">
<sv-title>合伙人信息</sv-title> <sv-title>合伙人信息</sv-title>
@ -386,7 +432,7 @@
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'"> [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv> </sv>
<sv label="管理员"> <sv label="管理员">
</sv> </sv>
<sv label="绑定时间"> <sv label="绑定时间">
<input nz-input type="text" [(ngModel)]="partnerInfo.enterprisePartnerRelTime" [readonly]="!isEdit" <input nz-input type="text" [(ngModel)]="partnerInfo.enterprisePartnerRelTime" [readonly]="!isEdit"
@ -511,4 +557,4 @@
</div> </div>
</div> </div>
</nz-upload> </nz-upload>
</ng-template> </ng-template>

View File

@ -30,11 +30,11 @@
<div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="24" [nzXs]="24" class="d-flex" <div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="24" [nzXs]="24" class="d-flex"
style="justify-content: flex-end;padding-right: 24px;"> style="justify-content: flex-end;padding-right: 24px;">
<button *ngIf="userDetail?.stateLocked" [nzLoading]="service.http.loading" nz-button nzType="primary" <button *ngIf="userDetail?.stateLocked" [nzLoading]="service.http.loading" nz-button nzType="primary"
nzGhost (click)="userAction(1)" acl [acl-ability]="['USERCENTER-FREIGHT-USER-D-lock']"> nzGhost (click)="userAction(1)" acl [acl-ability]="['USERCENTER-FREIGHT-USER-D-lock']">
启用 启用
</button> </button>
<button *ngIf="!userDetail?.stateLocked" [nzLoading]="service.http.loading" nz-button nzDanger nzGhost <button *ngIf="!userDetail?.stateLocked" [nzLoading]="service.http.loading" nz-button nzDanger nzGhost
(click)="userAction(0)" acl [acl-ability]="['USERCENTER-FREIGHT-USER-D-lock']"> (click)="userAction(0)" acl [acl-ability]="['USERCENTER-FREIGHT-USER-D-lock']">
冻结 冻结
</button> </button>
</div> </div>
@ -46,9 +46,42 @@
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card [nzLoading]="service.http.loading"> <nz-card [nzLoading]="service.http.loading" [nzBorderless]="true" style="height: 100%;">
<sv-container col="2"> <div class="mb-md">
<sv-title>个人信息 <div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
<div>
<a class="sign"></a>
<span>个人信息</span>
<label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="userIdentityDetail?.certificationStatus===2" style="color: #ff4d4f;"><i nz-icon
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回
</label>
</div>
<div>
<ng-container *ngIf="isEditUser; else elseTemplate">
<button [nzLoading]="service.http.loading" nz-button (click)="reset()">
取消
</button>
<button [nzLoading]="service.http.loading" nz-button nzDanger (click)="saveUser()">
保存
</button>
</ng-container>
<ng-template #elseTemplate>
<button nz-button nzType="default" nzDanger (click)="auditPass()"
*ngIf="userIdentityDetail.certificationStatus===0" [nzLoading]="service.http.loading" acl
[acl-ability]="['USERCENTER-FREIGHT-USER-D-audit']">审核通过</button>
<button nz-button nzType="default" nzDanger (click)="auditNo()"
*ngIf="userIdentityDetail.certificationStatus===0" [nzLoading]="service.http.loading" acl
[acl-ability]="['USERCENTER-FREIGHT-USER-D-audit']">驳回审核</button>
<button nz-button nzType="default" nzDanger (click)="ratify()" acl
[acl-ability]="['USERCENTER-FREIGHT-USER-D-edit']">修改</button>
</ng-template>
</div>
</div>
<sv-container col="2">
<!-- <sv-title>个人信息
<label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;"><i nz-icon <label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;"><i nz-icon
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过 nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label> </label>
@ -71,51 +104,60 @@
<button nz-button nzType="default" nzDanger (click)="ratify()" acl [acl-ability]="['USERCENTER-FREIGHT-USER-D-edit']" >修改</button> <button nz-button nzType="default" nzDanger (click)="ratify()" acl [acl-ability]="['USERCENTER-FREIGHT-USER-D-edit']" >修改</button>
</ng-template> </ng-template>
</div> </div>
</sv-title> </sv-title> -->
<sv label="姓名"> <sv label="姓名">
<input nz-input type="text" [maxlength]="32" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser" <input nz-input type="text" [maxlength]="32" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'"> [nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv> </sv>
<sv label="身份证号码"> <sv label="身份证号码">
<input nz-input type="text" [minlength]="18" [maxlength]="18" [(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser" <input nz-input type="text" [minlength]="18" [maxlength]="18"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'"> [(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser" [nzBorderless]="!isEditUser"
</sv> [placeholder]="isEditUser?'':'-'">
<sv label="有效期" col="1"> </sv>
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" " <sv label="有效期" col="1">
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 130px;" class="calendar"> <nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
</nz-date-picker> [nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 130px;"
- class="calendar">
<ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime"> </nz-date-picker>
<label style="padding-left: 11px;">长期</label> -
</ng-container> <ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime">
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" " <label style="padding-left: 11px;">长期</label>
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 130px;" 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 label="身份证照" col="1">
<div class="d-flex">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'certificateBackFront'}">
</ng-container> </ng-container>
<ng-container <nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}"> [nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 130px;"
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> </ng-container>
</div> </sv>
</sv> <sv label="身份证照" col="1">
</sv-container> <div class="d-flex">
<nz-divider></nz-divider> <ng-container
<sv-container col="3" class="mt16"> *ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'certificateBackFront'}">
<sv-title>关联企业</sv-title> </ng-container>
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}">
</ng-container>
</div>
</sv>
</sv-container>
</div>
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>关联企业</span>
</div>
<!-- <sv-title>关联企业</sv-title> -->
<st #st [columns]="columns" [data]="service.$api_get_driver_projects" size="small" <st #st [columns]="columns" [data]="service.$api_get_driver_projects" size="small"
[req]="{ method: 'POST', allInBody: true, params: {appUserId:route.snapshot.params.id} }" [req]="{ method: 'POST', allInBody: true, params: {appUserId:route.snapshot.params.id} }"
[res]="{ reName: { list: 'data' } }" [page]="{ show: false }" style="width: 100%;"> [res]="{ reName: { list: 'data' } }" [page]="{ show: false }" style="width: 100%;">
</st> </st>
</sv-container>
</div>
</nz-card> </nz-card>
</ng-container> </ng-container>
@ -159,4 +201,4 @@
</div> </div>
</div> </div>
</nz-upload> </nz-upload>
</ng-template> </ng-template>

View File

@ -3,7 +3,7 @@
:host { :host {
::ng-deep { ::ng-deep {
.user-info { .user-info {
display : flex; display: flex;
font-size: 16px; font-size: 16px;
.enterprise-name { .enterprise-name {
@ -11,9 +11,9 @@
} }
img { img {
width : 64px; width: 64px;
height : 64px; height: 64px;
margin-right : 15px; margin-right: 15px;
border-radius: 50%; border-radius: 50%;
} }
@ -22,4 +22,5 @@
} }
} }
} }
}
}