Files
bbq/src/app/routes/usercenter/components/driver/captain/captain-detail/captain-detail.component.ts
Taric Xin 75c541d74b edit
2021-12-16 19:40:21 +08:00

216 lines
6.2 KiB
TypeScript

import { DatePipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { apiConf } from '@conf/api.conf';
import { NzModalService } from 'ng-zorro-antd/modal';
import { UsermanageService } from 'src/app/routes/usercenter/services/usercenter.service';
import { ImageViewComponent } from 'src/app/shared/components/imagelist';
@Component({
selector: 'app-captain-detail',
templateUrl: './captain-detail.component.html',
styleUrls: ['./captain-detail.component.less'],
providers: [DatePipe]
})
export class CaptainDetailComponent implements OnInit {
userDetail: any;
userIdentityDetail: any = {};
tempalateUserIdentityDetail = { ...this.userIdentityDetail };
@ViewChild('redectModal', { static: false })
redectModal!: any;
@ViewChild('rejectedDriverModal', { static: false })
rejectedDriverModal!: any;
approvalOpinion = '';
isEditUser = false;
uploadURl = apiConf.waterFileUpload;
disabledUpload = false;
constructor(
private nzModalService: NzModalService,
public service: UsermanageService,
private route: ActivatedRoute,
private datePipe: DatePipe
) {}
ngOnInit() {
this.initData();
}
initData() {
// 获取司机头部信息
this.service
.request(this.service.$api_get_user_detail, {
appUserId: this.route.snapshot.params.id
})
.subscribe(res => {
if (res) {
this.userDetail = res;
}
});
// 获取用户个人信息
this.service
.request(this.service.$api_get_user_identity, {
id: this.route.snapshot.params.id
})
.subscribe(res => {
if (res) {
this.userIdentityDetail = res;
this.tempalateUserIdentityDetail = { ...this.userIdentityDetail };
}
});
}
/** 启用/冻结司机 */
userAction(status: number) {
console.log(this.userDetail);
this.nzModalService.warning({
nzTitle: status === 1 ? '确定启用该司机吗?' : '确定冻结该司机吗?',
nzContent: status === 1 ? '启用后,该司机将恢复正常使用功能,请再次确认!' : '冻结后,司机将被限制使用,无法登陆,请谨慎操作!',
nzOnOk: () => {
this.service
.request(this.service.$api_lock_or_free_user, {
appUserId: [this.userDetail.appUserId],
freezeOrResume: !!!status,
pageName: '司机详情',
telephone: this.userDetail.phone
})
.subscribe(res => {
if (res) {
this.service.msgSrv.success('操作成功');
}
this.initData();
});
}
});
}
/** 审核通过个人信息 */
approveUser() {
this.nzModalService.confirm({
nzTitle: '审核通过',
nzContent: `是否确认通过(姓名:${this.userIdentityDetail.name})审核`,
nzOnOk: () => {
this.adjuctUser({ auditStatus: 0, auditType: 0, identityId: this.userIdentityDetail?.id }, '审核通过');
}
});
}
/** 驳回个人信息 */
rejectedUser() {
this.approvalOpinion = '';
this.nzModalService.create({
nzTitle: '审核驳回',
nzContent: this.redectModal,
nzOnOk: () => {
if (!this.approvalOpinion) {
return false;
}
this.adjuctUser(
{
auditStatus: 1,
auditType: 0,
identityId: this.userIdentityDetail?.id,
certificationOpinions: this.approvalOpinion
},
'审核驳回成功'
);
return;
}
});
}
/** 个人信息审核 */
private adjuctUser(params: any, msg: string) {
this.service.request(this.service.$api_approve_identity, { ...params }).subscribe(res => {
if (res) {
this.service.msgSrv.success(msg);
}
this.initData();
});
}
/**
* 开启修改
*/
ratify() {
this.isEditUser = true;
}
/**
* 需求修改
*/
reset() {
this.userIdentityDetail = { ...this.tempalateUserIdentityDetail };
this.isEditUser = false;
}
saveUser() {
const userIdentity = this.userIdentityDetail;
const params = {
certificateNumber: userIdentity.certificateNumber,
certificatePhotoBack: userIdentity.certificatePhotoBack,
certificatePhotoBackWatermark: userIdentity.certificatePhotoBackWatermark,
certificatePhotoFront: userIdentity.certificatePhotoFront,
certificatePhotoFrontWatermark: userIdentity.certificatePhotoFrontWatermark,
certificateType: userIdentity.certificateType,
handCertificate: userIdentity.handCertificate,
id: userIdentity.id,
name: userIdentity.name,
souceType: userIdentity.souceType,
sourceAppId: userIdentity.sourceAppId,
tenantId: userIdentity.tenantId,
userId: userIdentity.userId,
validEndTime:
userIdentity.validEndTime?.length === 10
? userIdentity.validEndTime
: this.datePipe.transform(userIdentity.validEndTime, 'yyyy-MM-dd'),
validStartTime:
userIdentity.validStartTime?.length === 10
? userIdentity.validStartTime
: this.datePipe.transform(userIdentity.validStartTime, 'yyyy-MM-dd')
};
this.service.request(this.service.$api_update_driver_identity, params).subscribe(res => {
if (res) {
this.service.msgSrv.success('修改成功');
this.isEditUser = false;
this.initData();
}
});
}
changeUpload({ file, fileList, type }: any, data: any, key: string, key2: string) {
if (type === 'success') {
data[key] = file.response.data?.fullFileWatermarkPath;
data[key2] = file.response.data?.fullFilePath;
}
}
showImg(url: any) {
const params = {
imgList: [url],
index: 0
};
this.nzModalService.create({ nzContent: ImageViewComponent, nzComponentParams: { params } });
}
deleteImg(data: any, key: string, key2: string) {
this.nzModalService.warning({
nzTitle: '是否确认删除该图片',
nzOnOk: () => {
this.disabledUpload = true;
data[key] = '';
data[key2] = '';
setTimeout(() => {
this.disabledUpload = false;
}, 100);
}
});
}
goBack() {
window.history.go(-1);
}
}