Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop

This commit is contained in:
Taric Xin
2022-05-06 14:24:15 +08:00
11 changed files with 767 additions and 485 deletions

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2022-01-18 09:51:21
* @LastEditors : Shiming
* @LastEditTime : 2022-05-05 15:22:17
* @LastEditTime : 2022-05-06 13:46:07
* @FilePath : \\tms-obc-web\\proxy.conf.js
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -30,7 +30,7 @@ module.exports = {
// },
'//api': {
target: {
host: 'tms-api-test.eascs.com',
host: 'tms-api-dev.eascs.com',
protocol: 'https:',
port: 443
},

View File

@ -77,8 +77,10 @@ export class DatatableDataindexComponent implements OnInit {
// 订单类型比例
this.service.request(this.service.$api_getBillTypeProportion).subscribe(res => {
if (res) {
this.billTypeDatas = this.formatCoordinateData(res);
this.initBillChart(this.g2custom['el'].nativeElement as any);
const billTypeDatas2 = this.formatCoordinateData(res);
console.log(billTypeDatas2);
this.initBillChart(this.g2custom['el'].nativeElement as any,billTypeDatas2);
}
});
// 大区业绩完成情况
@ -98,6 +100,8 @@ export class DatatableDataindexComponent implements OnInit {
this.service.request(this.service.$api_getWayBillDirectProportion).subscribe(res => {
if (res) {
const billTypeDatas = this.formatCoordinateData(res.map((item: any) => ({ ...item, billType: item.wayBillType })));
console.log(billTypeDatas);
this.initBillChart(this.BillDirectProportion['el'].nativeElement as any, billTypeDatas);
}
});
@ -141,7 +145,7 @@ export class DatatableDataindexComponent implements OnInit {
chart.scale('percent', {
formatter: val => {
val = val * 100 + '%';
val = (val * 100 ).toFixed(0)+ '%';
return val;
}
});
@ -198,7 +202,7 @@ export class DatatableDataindexComponent implements OnInit {
.label('percent', percent => {
return {
content: data => {
return ` ${percent * 100}%`;
return (percent * 100).toFixed(0)+`%`;
},
style: { fontSize: 14 }
};
@ -498,6 +502,8 @@ export class DatatableDataindexComponent implements OnInit {
percent: Number((item.quantity / total).toFixed(2))
});
});
console.log(rs);
return rs;
}

View File

@ -236,7 +236,9 @@ export class WithdrawalsDetailComponent implements OnInit {
width: 140
},
{ title: '运费明细', render: 'amountDetails', className: 'text-right', width: 150 },
{ title: '网络货运人', index: 'ltdName', className: 'text-left', width: 200 },
{ title: '货主', index: 'enterpriseInfoName', className: 'text-left', width: 200 },
{ title: '项目名称', index: 'enterpriseProjectName', className: 'text-left', width: 200 },
{ title: '订单号', render: 'billId', width: 200 },
{ title: '运单号', render: 'wayBillId', width: 200 },
{ title: '货源编号', index: 'resourceCode', width: 200 },

View File

@ -1,3 +1,13 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-04-29 17:28:23
* @LastEditors : Shiming
* @LastEditTime : 2022-05-06 14:20:04
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\partner-list\\components\\index\\partner-list.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'合伙人列表'"> </page-header-wrapper>
<nz-card class="search-box" nzBordered>
@ -48,7 +58,7 @@
<div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="140" [col]="1">
<se label="合伙人名称"> {{selectItem?.enterpriseName || selectItem?.contactName}} </se>
<se label="当前渠道销售"> {{selectItem?.channelId}} </se>
<se label="当前渠道销售"> {{selectItem?.channelIdLabel}} </se>
<se label="渠道销售修改为" required>
<nz-select [(ngModel)]="cannelItem.channelId" style="width: 100%">
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of cannels"></nz-option>

View File

@ -1,5 +1,5 @@
<div>
<sf #sf [ui]="{ '*': { spanLabelFixed: 120, grid: { span: 24 }}}" [schema]="schema" [button]="'none'"></sf>
<sf #sf [ui]="{ '*': { spanLabelFixed: 120, grid: { span: 24 }}}" [schema]="schema" [formData]="formData" [button]="'none'"></sf>
</div>
<div class="modal-footer">
<button nz-button type="button" (click)="close()">取消</button>

View File

@ -15,11 +15,30 @@ export class PartnerAuditModalComponent implements OnInit {
@Input()
info: any;
schema!: SFSchema;
formData: any;
sourcePage = '';
constructor(private nzModalService: NzModalService, public service: PartnerListService, private modal: NzModalRef) {}
ngOnInit(): void {
console.log(this.info);
this.initSF(this.info);
if(this.info.channelId) {
const value = [{
label: this.info.channelIdLabel,
value: this.info.channelId,
}]
setTimeout(() => {
if(this.sf) {
console.log('888');
// this.sf.getProperty('/channelId')!.schema.enum = value;
// this.sf.getProperty('/channelId')!.widget.reset(value);
this.sf.setValue('/channelId', this.info.channelId);
}
})
}
}
initSF(user: any) {
@ -30,13 +49,13 @@ export class PartnerAuditModalComponent implements OnInit {
ui: {
hidden: true
},
default: this.info.isPass
// default: this.info.isPass
},
staffName: {
title: '合伙人名称',
type: 'string',
ui: { widget: 'text' },
default: user.enterpriseName
// default: user.enterpriseName
},
status: {
title: '审核结果',
@ -68,7 +87,7 @@ export class PartnerAuditModalComponent implements OnInit {
required: ' '
}
},
default: ''
default: user.channelId
},
approvalOpinion: {
title: '备注',
@ -90,6 +109,8 @@ export class PartnerAuditModalComponent implements OnInit {
},
required: ['channelId', 'approvalOpinion']
};
console.log('666');
}
sure() {

View File

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

View File

@ -39,10 +39,60 @@
</page-header-wrapper>
<nz-card [nzLoading]="service.http.loading">
<div [class]="isEditUser?'edit-box':'readOnly-box'">
<sv-container col="2">
<sv-title>个人信息
<nz-card [nzLoading]="service.http.loading" [nzBorderless]="true">
<div class="mb-md">
<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;" 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
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
@ -85,49 +135,82 @@
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editUser']">修改</button>
</ng-template>
</div>
</sv-title>
<sv label="姓名">
<input nz-input type="text" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv>
<sv label="身份证号">
<input nz-input type="text" [(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv>
<sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;" class="calendar">
</nz-date-picker>
-
<ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;" class="calendar">
</nz-date-picker>
<ng-container *ngIf="isEditUser">
<label nz-checkbox [ngModel]="!!!userIdentityDetail.validEndTime"
(ngModelChange)="$event?userIdentityDetail.validEndTime='':''" class="ml-sm">长期</label>
</ng-container>
</sv>
</sv-title> -->
<sv label="姓名">
<input nz-input type="text" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv>
<sv label="身份证号">
<input nz-input type="text" [(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv>
<sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;"
class="calendar">
</nz-date-picker>
-
<ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 110px;"
class="calendar">
</nz-date-picker>
<ng-container *ngIf="isEditUser">
<label nz-checkbox [ngModel]="!!!userIdentityDetail.validEndTime"
(ngModelChange)="$event?userIdentityDetail.validEndTime='':''" class="ml-sm">长期</label>
</ng-container>
</sv>
<sv 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
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}">
</ng-container>
</div>
</sv>
</sv-container>
<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
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}">
</ng-container>
</div>
</sv>
</sv-container>
</div>
</div>
<nz-divider></nz-divider>
<div [class]="isEditDriver?'edit-box':'readOnly-box'">
<sv-container col="3" class="mt16">
<sv-title>驾驶证信息
<div class="mb-md">
<div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
<div>
<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
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
@ -152,37 +235,37 @@
[acl-ability]="['USERCENTER-DRIVER-LIST-DETAIL-editDriver']">修改</button>
</ng-template>
</div>
</sv-title>
<sv label="驾驶证号">
<input nz-input type="text" [(ngModel)]="driverDetail.licenseNo" [readonly]="!isEditDriver"
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
</sv>
<sv label="准驾车型">
<nz-select [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="driverDetail.driverModel" nzMode="multiple"
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver" [nzShowArrow]="isEditDriver"
[nzDisabled]="!isEditDriver">
<nz-option *ngFor="let i of contencarModel" [nzLabel]="i.label" [nzValue]="i.label"></nz-option>
</nz-select>
</sv>
<sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;"
class="calendar">
</nz-date-picker>
-
<ng-container *ngIf="!isEditDriver && !driverDetail?.validEndTime && driverDetail?.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<nz-date-picker [(ngModel)]="driverDetail.validEndTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;"
class="calendar">
</nz-date-picker>
<ng-container *ngIf="isEditDriver">
<label nz-checkbox [ngModel]="!!!driverDetail.validEndTime"
(ngModelChange)="$event?driverDetail.validEndTime='':''" class="ml-sm">长期</label>
</ng-container>
</sv>
<!-- <sv label="有效期起">
</sv-title> -->
<sv label="驾驶证号">
<input nz-input type="text" [(ngModel)]="driverDetail.licenseNo" [readonly]="!isEditDriver"
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
</sv>
<sv label="准驾车型">
<nz-select [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="driverDetail.driverModel" nzMode="multiple"
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver" [nzShowArrow]="isEditDriver"
[nzDisabled]="!isEditDriver">
<nz-option *ngFor="let i of contencarModel" [nzLabel]="i.label" [nzValue]="i.label"></nz-option>
</nz-select>
</sv>
<sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;"
class="calendar">
</nz-date-picker>
-
<ng-container *ngIf="!isEditDriver && !driverDetail?.validEndTime && driverDetail?.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<nz-date-picker [(ngModel)]="driverDetail.validEndTime" [nzDisabled]="!isEditDriver" nzPlaceHolder=" "
[nzBorderless]="!isEditDriver" [nzSuffixIcon]="isEditDriver?'calendar':''" style="width: 110px;"
class="calendar">
</nz-date-picker>
<ng-container *ngIf="isEditDriver">
<label nz-checkbox [ngModel]="!!!driverDetail.validEndTime"
(ngModelChange)="$event?driverDetail.validEndTime='':''" class="ml-sm">长期</label>
</ng-container>
</sv>
<!-- <sv label="有效期起">
<nz-date-picker [(ngModel)]="driverDetail.validStartTime" [nzDisabled]="!isEditDriver"
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
@ -192,32 +275,43 @@
[nzPlaceHolder]="isEditDriver?'':'-'" [nzBorderless]="!isEditDriver"
[nzSuffixIcon]="isEditDriver?'calendar':''"></nz-date-picker>
</sv> -->
<sv label="驾驶证签发机关" col="2">
<ng-container *ngIf="isEditDriver; else signingOrganizationTemplate">
<input nz-input type="text" [(ngModel)]="driverDetail.signingOrganization" [readonly]="!isEditDriver"
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
</ng-container>
<ng-template #signingOrganizationTemplate>
{{driverDetail.signingOrganization}}
</ng-template>
</sv>
<sv label="驾驶证照片" col="1">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:driverDetail,status:isEditDriver,key:'certificatePhotoWatermark',key2:'certificatePhoto',hover:'driverCertificate'}">
</ng-container>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv label="驾驶证签发机关" col="2">
<ng-container *ngIf="isEditDriver; else signingOrganizationTemplate">
<input nz-input type="text" [(ngModel)]="driverDetail.signingOrganization" [readonly]="!isEditDriver"
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
</ng-container>
<ng-template #signingOrganizationTemplate>
{{driverDetail.signingOrganization}}
</ng-template>
</sv>
<sv label="驾驶证照片" col="1">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:driverDetail,status:isEditDriver,key:'certificatePhotoWatermark',key2:'certificatePhoto',hover:'driverCertificate'}">
</ng-container>
</sv>
</sv-container>
</div>
</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-title>从业资格证信息
<!-- <sv-title>从业资格证信息
<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>
</sv-title>
</sv-title> -->
<sv label="从业资格证号">
<input nz-input type="text" [(ngModel)]="licenseDetail.licenseNo" [readonly]="!isEditDriver"
[nzBorderless]="!isEditDriver" [placeholder]="isEditDriver?'':'-'">
@ -262,73 +356,95 @@
</sv-container>
</div>
<nz-divider></nz-divider>
<sv-container col="3" class="mt16">
<sv-title>载具信息</sv-title>
<ng-container *ngFor="let carDatail of carList">
<sv label="车牌号">
{{ carDatail?.carNo }}
</sv>
<sv label="车牌颜色">
{{ carDatail?.carNoColorLabel }}
</sv>
<sv label="车型">
{{ carDatail?.carModelLabel }}
</sv>
<sv label="车长">
{{ carDatail?.carLengthLabel ? carDatail?.carLengthLabel +'米' :'' }}
</sv>
<sv label="是否为当前车辆">
{{ carDatail?.isDefault?'是':'否' }}
</sv>
<sv label="自有载具">
{{ carDatail?.isSelf?'否':'是' }}
</sv>
<sv label="行驶证照片" col="1">
<app-imagelist [imgList]="[carDatail?.certificatePhotoFrontWatermark,carDatail?.certificatePhotoBackWatermark]">
</app-imagelist>
</sv>
<sv label="道路运输证照片" col="3">
<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>
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>载具信息</span>
<ng-container *ngIf="carList?.length===0">(暂无载具信息)</ng-container>
</div>
<sv-container col="3" class="mt16">
<!-- <sv-title>载具信息</sv-title> -->
<ng-container *ngFor="let carDatail of carList">
<sv label="车牌号">
{{ carDatail?.carNo }}
</sv>
<sv label="车牌颜色">
{{ carDatail?.carNoColorLabel }}
</sv>
<sv label="车型">
{{ carDatail?.carModelLabel }}
</sv>
<sv label="车长">
{{ carDatail?.carLengthLabel ? carDatail?.carLengthLabel +'米' :'' }}
</sv>
<sv label="是否为当前车辆">
{{ carDatail?.isDefault?'是':'否' }}
</sv>
<sv label="自有载具">
{{ carDatail?.isSelf?'否':'是' }}
</sv>
<sv label="行驶证照片" col="1">
<app-imagelist
[imgList]="[carDatail?.certificatePhotoFrontWatermark,carDatail?.certificatePhotoBackWatermark]">
</app-imagelist>
</sv>
<sv label="道路运输证照片" col="3">
<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">
<sv-title>银行结算信息 <ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container>
</sv-title>
<ng-container *ngFor="let item of bankList">
<sv label="开户银行">
{{ item.bankName }}
</sv>
<sv label="银行卡号">
{{ item?.bankCardNumber }}
</sv>
</ng-container>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3" class="mt-md">
<sv-title>服务评级
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span>银行结算信息</span>
<ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container>
</div>
<sv-container col="3" class="mt-md">
<!-- <sv-title>银行结算信息 <ng-container *ngIf="bankList?.length===0">(暂无银行信息)</ng-container>
</sv-title> -->
<ng-container *ngFor="let item of bankList">
<sv label="开户银行">
{{ item.bankName }}
</sv>
<sv label="银行卡号">
{{ item?.bankCardNumber }}
</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>
</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">
<!-- <sv-title>服务评级
<ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-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">
<sv-title>关联企业</sv-title>
<div class="mb-md">
<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"
[req]="{ method: 'POST', allInBody: true, params: {appUserId:route.snapshot.params.id} }" [page]="{ show: false }"
[res]="{ reName: { list: 'data' } }" style="width: 100%;">
</st>
</sv-container>
</div>
</nz-card>

View File

@ -114,10 +114,11 @@
</ng-template>
</page-header-wrapper>
<nz-card [class]="isEdit?'edit-box':'readOnly-box'">
<sv-container col="2" class="mt16">
<sv-title>
<label class="mr-md">企业基本信息</label>
<nz-card [class]="isEdit?'edit-box':'readOnly-box'" [nzBorderless]="true">
<div class="mb-md">
<div class="font-weight-blod text-md detail-title">
<a class="sign"></a>
<span class="mr-xs">企业基本信息</span>
<label *ngIf="detailData?.approvalStatus===10" style="color: #1890ff;"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>待审核
</label>
@ -130,251 +131,296 @@
<label *ngIf="detailData?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
</label>
<p style="margin-bottom: 0;">
四要素验证:
<label *ngIf="detailData?.esignCheckStatus===0" style="color: #ff4d4f;"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>不通过&nbsp;&nbsp;驳回原因:{{detailData?.esignCheckMsg}}
</label>
<label *ngIf="detailData?.esignCheckStatus===1" style="color: #52c41a;"><i nz-icon nzType="check-circle"
nzTheme="fill" class="mr-xs"></i>通过
</label>
<label *ngIf="detailData?.esignCheckStatus===2" style="color: #1890ff;"><i nz-icon nzType="close-circle"
nzTheme="fill" class="mr-xs"></i>未认证:&nbsp;&nbsp;{{detailData?.esignCheckMsg}}
</label>
</p>
</sv-title>
<sv label="公司名称">
<ng-container *ngIf="isEdit; else enterpriseNameelseTemplate">
<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"
</div>
<sv-container col="2" class="mt16">
<sv-title>
<!-- <label class="mr-md">企业基本信息</label>
<label *ngIf="detailData?.approvalStatus===10" style="color: #1890ff;"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>待审核
</label>
<label *ngIf="detailData?.approvalStatus===20" style="color: #52c41a;"><i nz-icon nzType="check-circle"
nzTheme="fill" class="mr-xs"></i>审核通过
</label>
<label *ngIf="detailData?.approvalStatus===30" style="color: #ff4d4f;"><i nz-icon nzType="close-circle"
nzTheme="fill" class="mr-xs"></i>驳回&nbsp;驳回原因:{{detailData?.approvalOpinion}}
</label>
<label *ngIf="detailData?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
</label> -->
<p style="margin-bottom: 0;">
四要素验证:
<label *ngIf="detailData?.esignCheckStatus===0" style="color: #ff4d4f;"><i nz-icon nzType="info-circle"
nzTheme="fill" class="mr-xs"></i>不通过&nbsp;&nbsp;驳回原因:{{detailData?.esignCheckMsg}}
</label>
<label *ngIf="detailData?.esignCheckStatus===1" style="color: #52c41a;"><i nz-icon nzType="check-circle"
nzTheme="fill" class="mr-xs"></i>通过
</label>
<label *ngIf="detailData?.esignCheckStatus===2" style="color: #1890ff;"><i nz-icon nzType="close-circle"
nzTheme="fill" class="mr-xs"></i>未认证:&nbsp;&nbsp;{{detailData?.esignCheckMsg}}
</label>
</p>
</sv-title>
<sv label="公司名称">
<ng-container *ngIf="isEdit; else enterpriseNameelseTemplate">
<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?'':'-'"> -->
<nz-select [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="detailData.enterpriseType"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option nzLabel="物流企业" [nzValue]="1"></nz-option>
<nz-option nzLabel="货运代理" [nzValue]="2"></nz-option>
<nz-option nzLabel="生产型企业" [nzValue]="3"></nz-option>
<nz-option nzLabel="贸易类企业" [nzValue]="4"></nz-option>
<nz-option nzLabel="科技型企业" [nzValue]="5"></nz-option>
<nz-option nzLabel="化学化工企业" [nzValue]="6"></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 [nzMaxTagCount]="3" nzPlaceHolder="请选择" [(ngModel)]="detailData.enterpriseType"
[nzPlaceHolder]="isEdit?'':'-'" [nzBorderless]="!isEdit" [nzShowArrow]="isEdit" [nzDisabled]="!isEdit">
<nz-option nzLabel="物流企业" [nzValue]="1"></nz-option>
<nz-option nzLabel="货运代理" [nzValue]="2"></nz-option>
<nz-option nzLabel="生产型企业" [nzValue]="3"></nz-option>
<nz-option nzLabel="贸易类企业" [nzValue]="4"></nz-option>
<nz-option nzLabel="科技型企业" [nzValue]="5"></nz-option>
<nz-option nzLabel="化学化工企业" [nzValue]="6"></nz-option>
<nz-option nzLabel="其他" [nzValue]="7"></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"
</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>
</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?'':'-'">
</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?'':'-'">
</sv>
<sv label="营业执照" col="3">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'licensePhotoWatermark',key2:'licensePhoto',hover:'detailPhoto'}">
</ng-container>
</sv>
<sv label="企业授权函" col="3">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'creditPhotoWatermark',key2:'creditPhoto',hover:'adminPhoto'}">
</ng-container>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3" class="mt16">
<sv-title>法人信息
</sv>
<sv label="营业执照" col="3">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'licensePhotoWatermark',key2:'licensePhoto',hover:'detailPhoto'}">
</ng-container>
</sv>
<sv label="企业授权函" col="3">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData,status:isEdit,key:'creditPhotoWatermark',key2:'creditPhoto',hover:'adminPhoto'}">
</ng-container>
</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?.legalPersonIdentityVO?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>法人身份证期限已过期
</label>
</sv-title>
<sv label="法定代表人">
<input nz-input type="text" maxlength="32" [(ngModel)]="detailData.legalPersonIdentityVO.name"
[readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv>
<sv label="身份证号码">
<input nz-input type="text" [(ngModel)]="detailData.legalPersonIdentityVO.certificateNumber" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv>
<sv label="身份证有效期" col="1">
<nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validStartTime" [nzDisabled]="!isEdit"
nzPlaceHolder=" " [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 120px;"
class="calendar"></nz-date-picker>
-
<ng-container
*ngIf="!isEdit && !detailData?.legalPersonIdentityVO?.validEndTime && detailData.legalPersonIdentityVO.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validEndTime" [nzDisabled]="!isEdit"
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">
</div>
<sv-container col="3" class="mt16">
<!-- <sv-title>法人信息
<label *ngIf="detailData?.legalPersonIdentityVO?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>法人身份证期限已过期
</label>
</sv-title> -->
<sv label="法定代表人">
<input nz-input type="text" maxlength="32" [(ngModel)]="detailData.legalPersonIdentityVO.name"
[readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv>
<sv label="身份证号码">
<input nz-input type="text" [(ngModel)]="detailData.legalPersonIdentityVO.certificateNumber"
[readonly]="!isEdit" [nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv>
<sv label="身份证有效期" col="1">
<nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validStartTime" [nzDisabled]="!isEdit"
nzPlaceHolder=" " [nzBorderless]="!isEdit" [nzSuffixIcon]="isEdit?'calendar':''" style="width: 120px;"
class="calendar"></nz-date-picker>
-
<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
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.legalPersonIdentityVO,status:isEdit,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'legalBack'}">
<nz-date-picker [(ngModel)]="detailData.legalPersonIdentityVO.validEndTime" [nzDisabled]="!isEdit"
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>
</div>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3">
<sv-title>企业管理员信息
</sv>
<sv label="身份证照" col="1">
<div class="d-flex">
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:detailData?.legalPersonIdentityVO,status:isEdit,key:'certificatePhotoFrontWatermark',key2:'certificatePhotoFront',hover:'legalFront'}">
</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;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
</label>
</sv-title>
<sv label="姓名">
<input nz-input type="text" [(ngModel)]="detailData.adminUserInfo.name" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</sv>
<sv label="手机号">
{{detailData.adminUserInfo?.mobile}}
</sv>
<sv label="身份证号">
<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"
</div>
<sv-container col="3">
<!-- <sv-title>企业管理员信息
<label *ngIf="detailData?.adminUserInfo?.isExpired" style="color: #fa8c16;">
<i nz-icon nzType="info-circle" nzTheme="fill" class="ml-md mr-xs"></i>企业营业期限已过期
</label>
</sv-title> -->
<sv label="姓名">
<input nz-input type="text" [(ngModel)]="detailData.adminUserInfo.name" [readonly]="!isEdit"
[nzBorderless]="!isEdit" [placeholder]="isEdit?'':'-'">
</ng-container>
<ng-template #registerAddressTemplate>
{{detailData.registerAddress}}
</ng-template>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3" class="mt-md">
<sv-title>服务评级
</sv>
<sv label="手机号">
{{detailData.adminUserInfo?.mobile}}
</sv>
<sv label="身份证号">
<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>
</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>
</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">
<!-- <sv-title>服务评级
<ng-container *ngIf="billEvaluateList?.length===0">(暂无评级)</ng-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> -->
<!-- <sv-container col="3" class="mt16">
<sv-title>合伙人信息</sv-title>

View File

@ -30,11 +30,11 @@
<div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="24" [nzXs]="24" class="d-flex"
style="justify-content: flex-end;padding-right: 24px;">
<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 *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>
</div>
@ -46,9 +46,42 @@
</ng-template>
</page-header-wrapper>
<nz-card [nzLoading]="service.http.loading">
<sv-container col="2">
<sv-title>个人信息
<nz-card [nzLoading]="service.http.loading" [nzBorderless]="true" style="height: 100%;">
<div class="mb-md">
<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
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
</label>
@ -71,51 +104,60 @@
<button nz-button nzType="default" nzDanger (click)="ratify()" acl [acl-ability]="['USERCENTER-FREIGHT-USER-D-edit']" >修改</button>
</ng-template>
</div>
</sv-title>
<sv label="姓名">
<input nz-input type="text" [maxlength]="32" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv>
<sv label="身份证号码">
<input nz-input type="text" [minlength]="18" [maxlength]="18" [(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv>
<sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 130px;" class="calendar">
</nz-date-picker>
-
<ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[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'}">
</sv-title> -->
<sv label="姓名">
<input nz-input type="text" [maxlength]="32" [(ngModel)]="userIdentityDetail.name" [readonly]="!isEditUser"
[nzBorderless]="!isEditUser" [placeholder]="isEditUser?'':'-'">
</sv>
<sv label="身份证号码">
<input nz-input type="text" [minlength]="18" [maxlength]="18"
[(ngModel)]="userIdentityDetail.certificateNumber" [readonly]="!isEditUser" [nzBorderless]="!isEditUser"
[placeholder]="isEditUser?'':'-'">
</sv>
<sv label="有效期" col="1">
<nz-date-picker [(ngModel)]="userIdentityDetail.validStartTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[nzBorderless]="!isEditUser" [nzSuffixIcon]="isEditUser?'calendar':''" style="width: 130px;"
class="calendar">
</nz-date-picker>
-
<ng-container *ngIf="!isEditUser && !userIdentityDetail?.validEndTime && userIdentityDetail?.validStartTime">
<label style="padding-left: 11px;">长期</label>
</ng-container>
<ng-container
*ngTemplateOutlet="uploadTemplate;context:{data:userIdentityDetail,status:isEditUser,key:'certificatePhotoBackWatermark',key2:'certificatePhotoBack',hover:'certificateBack'}">
<nz-date-picker [(ngModel)]="userIdentityDetail.validEndTime" [nzDisabled]="!isEditUser" nzPlaceHolder=" "
[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>
</div>
</sv>
</sv-container>
<nz-divider></nz-divider>
<sv-container col="3" class="mt16">
<sv-title>关联企业</sv-title>
</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
*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"
[req]="{ method: 'POST', allInBody: true, params: {appUserId:route.snapshot.params.id} }"
[res]="{ reName: { list: 'data' } }" [page]="{ show: false }" style="width: 100%;">
</st>
</sv-container>
</div>
</nz-card>
</ng-container>

View File

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