Files
bbq/src/app/shared/components/dynamic-setting/dynamic-setting-h5/dynamic-setting-h5.component.ts
wangshiming 510f8f25a5 fix bug
2022-02-15 11:23:47 +08:00

85 lines
2.3 KiB
TypeScript

/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-25 16:03:45
* @LastEditors : Shiming
* @LastEditTime : 2022-02-15 10:40:43
* @FilePath : \\tms-obc-web\\src\\app\\shared\\components\\dynamic-setting\\dynamic-setting-h5\\dynamic-setting-h5.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { Component, OnInit, EventEmitter, Input, Output } from '@angular/core';
import { BaseService } from '@shared';
import { NzUploadChangeParam } from 'ng-zorro-antd/upload';
const JSONTYPE = new Set([5, 6, 9]);
@Component({
selector: 'app-dynamic-setting-h5',
templateUrl: './dynamic-setting-h5.component.html',
styleUrls: ['./dynamic-setting-h5.component.less']
})
export class DynamicSettingH5Component implements OnInit {
@Input()
tabs: any[] = [];
@Input()
selectedTab: any = null;
@Input()
configList: any = [];
@Output()
selectedEvent = new EventEmitter<any>();
@Output()
saveEvent = new EventEmitter<any>();
@Input()
tabSpan = 4;
@Input()
labelWidth = 250;
@Input()
itemValue = 'itemValue';
listUrls: any;
constructor(public service: BaseService) {}
ngOnInit() {
console.log(this.tabs);
}
changeType(type: any): void {
this.selectedTab = type;
console.log(type);
this.selectedEvent.emit(this.selectedTab);
}
saveAction() {
if (this.configList?.length < 0) {
return;
}
console.log(this.configList);
let params = [...this.configList];
params = params.map((item: any) => {
console.log(item);
if (item.itemType == 9) {
const files = item.itemValue?.map(({ url, name }: any) => ({ url, name }));
return {
...item,
remark: item.remark ? JSON.stringify(item.remark) : null,
itemData: item.itemData ? JSON.stringify(item.itemData) : null,
itemValue: item.itemValue ? JSON.stringify(files) : null
};
}
if (JSONTYPE.has(item.itemType)) {
item.itemValue = item.itemValue ? JSON.stringify(item.itemValue) : null;
}
return {
...item,
remark: item.remark ? JSON.stringify(item.remark) : null,
itemData: item.itemData ? JSON.stringify(item.itemData) : null
};
});
console.log(params);
this.saveEvent.emit(params);
}
}
// [0]?.response?.data.fullFilePath