import { Component, OnInit, ViewChild } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; import { STColumn, STComponent } from '@delon/abc/st'; import { ModalHelper, _HttpClient } from '@delon/theme'; import { NzMessageService } from 'ng-zorro-antd/message'; import { UsermanageService } from '../../../../services/usercenter.service'; import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema, SFUploadWidgetSchema } from '@delon/form'; import { Observable, Observer } from 'rxjs'; @Component({ selector: 'app-Freight-components-EnterpriseAudit-view', templateUrl: './view.component.html', styleUrls: ['./view.component.less'], }) export class FreightComponentsEnterpriseAuditViewComponent implements OnInit { i: any; url = `/rule?_allow_anonymous=true`; @ViewChild('st', { static: false }) st!: STComponent; detailData: any; isShow = false; isVisible = false; modalTitle = '有效期'; modalName = ''; ui!: SFUISchema; schema!: SFSchema; @ViewChild('sf', { static: false }) sf!: SFComponent; schema1!: SFSchema; @ViewChild('sf1', { static: false }) sf1!: SFComponent; validData: any = ['suppliersType']; suppliersData: any = {}; constructor( private http: _HttpClient, private modal: ModalHelper, public service: UsermanageService, private route: ActivatedRoute, private modalHelper: ModalHelper, private msgSrv: NzMessageService, ) {} ngOnInit() { console.log(this.route.snapshot); // this.initData(); this.initSF(); this.initSF1(); // this.launchSign(); } /** * 初始化查询表单 */ initSF() { this.schema = { properties: { _$expand: { type: 'boolean', ui: { hidden: true } }, effectiveDate: { title: '有效期', type: 'string', ui: { widget: 'date', format: 'yyyy-MM-dd 00:00:00', // hidden: this.modalName === 'effectiveDate' ? false : true, } as SFDateWidgetSchema, }, }, required: ['effectiveDate'], }; this.ui = { '*': { spanLabelFixed: 120, grid: { span: 24 } } }; } initSF1() { this.schema1 = { properties: { _$expand: { type: 'boolean', ui: { hidden: true } }, suppliersType: { type: 'string', title: '类型', enum: [ { label: '非外部供应商', value: 0 }, { label: '外部供应商', value: 1 }, ], default: '', ui: { widget: 'select', change: (args: any) => { console.log(args, 'args'); this.suppliersData.suppliersType = args; if (args === 1) { this.validData = ['suppliersType', 'externalSuppliersId']; } else { this.validData = ['suppliersType']; this.suppliersData.externalSuppliersId = ''; } this.initSF1(); }, }, }, externalSuppliersId: { title: '外部供应商id', type: 'string', default: '', ui: { visibleIf: { suppliersType: (value: any) => value === 1 }, }, }, }, required: this.validData, }; } showModal(name: any) { this.modalName = name; if (name === 'effectiveDate') { this.isShow = true; } else { this.isVisible = true; } } async initData() { console.log(this.route.snapshot, 'this.route.snapshot'); const params = { tenantId: this.route.snapshot.params.id, // tenantId: this.route.snapshot.queryParams.tenantId, }; const res = await this.service.asyncRequest(this.service.$api_get_supplier_info, params); // // 商品资质 // if (res.enterpriseBusinessJson) { // res.enterpriseBusinessJson.aptitudes = res.enterpriseBusinessJson?.aptitudes ? res.enterpriseBusinessJson.aptitudes.split(',') : []; // } // // // 申请人身份证证件 // // res.applyUserJson.imagelist = []; // // res.applyUserJson.imagelist.push(res.applyUserJson.certificatePhotoFront); // // res.applyUserJson.imagelist.push(res.applyUserJson.certificatePhotoBack); // // res.applyUserJson.imagelist.push(res.applyUserJson.handCertificate); // 法人身份证证件 const imagelist = []; imagelist.push(res?.certificatePhotoFront); imagelist.push(res?.certificatePhotoBack); res.certificatePhoto = imagelist; // 营业执照 res.enterpriseQualificationCertificate = res.enterpriseQualificationCertificate ? res.enterpriseQualificationCertificate.split(',') : []; // 返回所在地 res.enterpriseAddressCodeStr = await this.getRegionFullName(res.enterpriseAddressCode); this.detailData = res; this.suppliersData = { suppliersType: res?.suppliersType, externalSuppliersId: res?.externalSuppliersId, }; } /** * 根据地区code查询地区详情 * @param code 地区代码 */ async getRegionFullName(code: any) { const params = { regionCode: code, }; const res = await this.service.asyncRequest(this.service.$api_get_region_detailByCode, params, 'POST', true); // if (res && res.regionFullName) { // const arr = res.regionFullName.split(','); // res.regionFullName = arr.reverse().join('-'); // } return res && res.regionFullName; } add() { // this.modal // .createStatic(FormEditComponent, { i: { id: 0 } }) // .subscribe(() => this.st.reload()); } goBack() { window.history.go(-1); } /** * 冻结 */ freezeOrResume(type: number) { console.log(type) // this.service.http // .post(this.service.$api_set_freezeOrResume, { // tenantId: this.route.snapshot.params.id, // // tenantId: this.route.snapshot.queryParams.tenantId, // status: type, // }) // .subscribe((res) => { // if (res.data === true) { // if (type === 0) { // this.service.msgSrv.success(`启用成功!`); // } else if (type === 1) { // this.service.msgSrv.success(`冻结成功!`); // } // this.ngOnInit(); // } else { // this.service.msgSrv.error(res.msg || '操作失败!'); // } // }); } PayOrResume(type: number) { console.log(type) // this.service.http // .post(this.service.$api_set_freezeOrResume, { // tenantId: this.route.snapshot.params.id, // // tenantId: this.route.snapshot.queryParams.tenantId, // status: type, // }) // .subscribe((res) => { // if (res.data === true) { // if (type === 0) { // this.service.msgSrv.success(`启用成功!`); // } else if (type === 1) { // this.service.msgSrv.success(`冻结成功!`); // } // this.ngOnInit(); // } else { // this.service.msgSrv.error(res.msg || '操作失败!'); // } // }); } handleCancel(name: any) { if (name === 'effectiveDate') { this.isShow = false; } else { this.isVisible = false; } } handleOK(name: any) { const params: any = { tenantId: this.route.snapshot.params.id, // tenantId: this.route.snapshot.queryParams.tenantId, }; if (name === 'effectiveDate') { params.effectiveDate = this.sf?.value?.effectiveDate; } else { Object.assign(params, this.sf1?.value); } this.service.http.post(this.service.$api_set_freezeOrResume, params).subscribe((res) => { if (res.data === true) { this.service.msgSrv.success(`编辑成功!`); this.ngOnInit(); } else { this.service.msgSrv.error(res.msg || '编辑失败!'); } if (name === 'effectiveDate') { this.isShow = false; } else { this.isVisible = false; } }); } }