diff --git a/src/app/routes/order-management/components/bulk-detail/bulk-detail.component.html b/src/app/routes/order-management/components/bulk-detail/bulk-detail.component.html index 19e038cf..7833e3f6 100644 --- a/src/app/routes/order-management/components/bulk-detail/bulk-detail.component.html +++ b/src/app/routes/order-management/components/bulk-detail/bulk-detail.component.html @@ -149,7 +149,7 @@
总计:{{ i?.totalAmount | currency }} (运费{{i?.totalFreight | currency}}, - 附加费{{ i?.totalSurcharge | currency }},附加费率{{i?.totalRate }}%) + 附加费{{ i?.totalSurcharge | currency }},附加费率{{i?.totalRate * 100 }}%)
收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}
diff --git a/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.html b/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.html index cb7ffc73..ca62c8e7 100644 --- a/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.html +++ b/src/app/routes/order-management/components/vehicle-detail/vehicle-detail.component.html @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2021-12-28 14:42:03 * @LastEditors : Shiming - * @LastEditTime : 2022-02-10 14:45:46 + * @LastEditTime : 2022-02-11 13:55:32 * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail\\vehicle-detail.component.html * Copyright (C) 2022 huzhenhong. All rights reserved. --> @@ -139,7 +139,7 @@
总计:{{ i?.totalAmount | currency }} (运费{{i?.totalFreight | currency}}, - 附加费{{ i?.totalSurcharge | currency }},附加费率{{i?.totalRate }}%) + 附加费{{ i?.totalSurcharge | currency }},附加费率{{i?.totalRate * 100 }}%)
收款人:{{ i?.payeeName }}/{{ i?.payeePhone }}
diff --git a/src/app/routes/sys-setting/components/network-freight/network-freight.component.html b/src/app/routes/sys-setting/components/network-freight/network-freight.component.html index 2a949bd7..b8412732 100644 --- a/src/app/routes/sys-setting/components/network-freight/network-freight.component.html +++ b/src/app/routes/sys-setting/components/network-freight/network-freight.component.html @@ -64,7 +64,7 @@ 设置 - 设置 + 设置 开通子账户 diff --git a/src/app/routes/sys-setting/components/network-freight/network-freight.component.ts b/src/app/routes/sys-setting/components/network-freight/network-freight.component.ts index a64a9190..d1d297a4 100644 --- a/src/app/routes/sys-setting/components/network-freight/network-freight.component.ts +++ b/src/app/routes/sys-setting/components/network-freight/network-freight.component.ts @@ -1,7 +1,7 @@ import { Component, OnInit, ViewChild } from '@angular/core'; import { STComponent, STColumn, STChange } from '@delon/abc/st'; import { SFCascaderWidgetSchema, SFComponent, SFRadioWidgetSchema, SFSchema, SFUISchema } from '@delon/form'; -import { DynamicSettingModalComponent } from '@shared'; +import { DynamicSettingModalComponent, SinglepageSettingModalComponent } from '@shared'; import { NzModalService } from 'ng-zorro-antd/modal'; import { takeLast } from 'rxjs/operators'; import { SystemService } from '../../services/system.service'; @@ -411,4 +411,16 @@ export class NetworkFreightComponent implements OnInit { getRegionDetailByCode(regionCode: any) { return this.service.request(this.service.$api_get_region_by_code, { regionCode }); } + setMakeInvoice2(item:any) { + this.nzModalService.create({ + nzTitle: '基础设置', + nzContent: SinglepageSettingModalComponent, + nzWidth: 900, + nzComponentParams: { + extendType: '1', + businessId: item.id + }, + nzFooter: null + }); + } } diff --git a/src/app/routes/usercenter/components/freight/enterprise-audit/enterprise-audit.component.html b/src/app/routes/usercenter/components/freight/enterprise-audit/enterprise-audit.component.html index 1a0b63c5..3ced7243 100644 --- a/src/app/routes/usercenter/components/freight/enterprise-audit/enterprise-audit.component.html +++ b/src/app/routes/usercenter/components/freight/enterprise-audit/enterprise-audit.component.html @@ -7,9 +7,9 @@
- + + (click)="exportList()" acl [acl-ability]="['USERCENTER-FREIGHT-ENTERPRISE-export']">导出 diff --git a/src/app/routes/usercenter/components/freight/list/list.component.html b/src/app/routes/usercenter/components/freight/list/list.component.html index 6693cd60..9b1cf776 100644 --- a/src/app/routes/usercenter/components/freight/list/list.component.html +++ b/src/app/routes/usercenter/components/freight/list/list.component.html @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2022-01-12 10:52:50 * @LastEditors : Shiming - * @LastEditTime : 2022-02-09 15:28:00 + * @LastEditTime : 2022-02-11 15:08:47 * @FilePath : \\tms-obc-web\\src\\app\\routes\\usercenter\\components\\freight\\list\\list.component.html * Copyright (C) 2022 huzhenhong. All rights reserved. --> @@ -18,9 +18,9 @@
- - - + + + +
+ + + \ No newline at end of file diff --git a/src/app/shared/components/singlepage-setting/singlepage-setting-h5/singlepage-setting-h5.component.less b/src/app/shared/components/singlepage-setting/singlepage-setting-h5/singlepage-setting-h5.component.less new file mode 100644 index 00000000..4b87d5c1 --- /dev/null +++ b/src/app/shared/components/singlepage-setting/singlepage-setting-h5/singlepage-setting-h5.component.less @@ -0,0 +1,27 @@ +:host { + ::ng-deep { + .card-height { + min-height: 600px; + } + + .save-btn { + width : 100%; + text-align: right; + } + + .block-radio { + display : flex; + min-height: 32px; + } + + input { + width : 100px; + margin-left: 10px; + } + + .ant-form-item-control-input-content { + display: flex; + } + } + + } \ No newline at end of file diff --git a/src/app/shared/components/singlepage-setting/singlepage-setting-h5/singlepage-setting-h5.component.ts b/src/app/shared/components/singlepage-setting/singlepage-setting-h5/singlepage-setting-h5.component.ts new file mode 100644 index 00000000..0c8e3dc1 --- /dev/null +++ b/src/app/shared/components/singlepage-setting/singlepage-setting-h5/singlepage-setting-h5.component.ts @@ -0,0 +1,69 @@ +/* + * @Description : + * @Version : 1.0 + * @Author : Shiming + * @Date : 2022-02-11 14:23:46 + * @LastEditors : Shiming + * @LastEditTime : 2022-02-11 14:29:00 + * @FilePath : \\tms-obc-web\\src\\app\\shared\\components\\singlepage-setting\\singlepage-setting-h5\\singlepage-setting-h5.component.ts + * Copyright (C) 2022 huzhenhong. All rights reserved. + */ +import { Component, OnInit, EventEmitter, Input, Output } from '@angular/core'; +import { BaseService } from '@shared'; + +const JSONTYPE = new Set([5,6]); +@Component({ + selector: 'app-singlepage-setting-h5', + templateUrl: './singlepage-setting-h5.component.html', + styleUrls: ['./singlepage-setting-h5.component.less'] +}) +export class SinglepageSettingH5Component implements OnInit { + @Input() + tabs: any[] = []; + @Input() + selectedTab: any = null; + + @Input() + configList: any = []; + @Output() + selectedEvent = new EventEmitter(); + @Output() + saveEvent = new EventEmitter(); + + @Input() + tabSpan = 4; + @Input() + labelWidth = 250; + @Input() + itemValue = 'itemValue'; + + constructor(public service: BaseService) {} + + ngOnInit() {} + + changeType(type: any): void { + this.selectedTab = type; + console.log(type); + + this.selectedEvent.emit(this.selectedTab); + } + + saveAction() { + if (this.configList?.length < 0) { + return; + } + + let params = [...this.configList]; + params = params.map((item: any) => { + 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 + }; + }); + this.saveEvent.emit(params); + } +} diff --git a/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.html b/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.html new file mode 100644 index 00000000..6fc4f6ad --- /dev/null +++ b/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.html @@ -0,0 +1,13 @@ + + + \ No newline at end of file diff --git a/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.less b/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.less new file mode 100644 index 00000000..e69de29b diff --git a/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.ts b/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.ts new file mode 100644 index 00000000..aed9dd04 --- /dev/null +++ b/src/app/shared/components/singlepage-setting/singlepage-setting-modal/singlepage-setting-modal.component.ts @@ -0,0 +1,101 @@ +/* + * @Description : + * @Version : 1.0 + * @Author : Shiming + * @Date : 2022-02-11 14:23:46 + * @LastEditors : Shiming + * @LastEditTime : 2022-02-11 14:33:08 + * @FilePath : \\tms-obc-web\\src\\app\\shared\\components\\singlepage-setting\\singlepage-setting-modal\\singlepage-setting-modal.component.ts + * Copyright (C) 2022 huzhenhong. All rights reserved. + */ +import { Component, Input, OnInit } from '@angular/core'; +import { ModalHelper } from '@delon/theme'; +import { NzModalRef } from 'ng-zorro-antd/modal'; +import { BaseService } from 'src/app/shared/services'; + +@Component({ + selector: 'app-singlepage-setting-modal', + templateUrl: './singlepage-setting-modal.component.html', + styleUrls: ['./singlepage-setting-modal.component.less'] +}) +export class SinglepageSettingModalComponent implements OnInit { + tabs: any[] = []; + selectedTab: any = null; + + configList: any = []; + + @Input() + extendType!: string; + @Input() + businessId!: string; + + constructor(public service: BaseService, private modalHelp: NzModalRef) {} + + ngOnInit() { + this.getTypeList(); + } + + getTypeList() { + this.service + .request('/api/mdc/pbc/sysConfigItemExtend/getSysConfigExtend', { + configFullKey: 'insurance', + extendType: this.extendType, + businessId: this.businessId + }) + .subscribe((res: Array) => { + if (res?.length > 0) { + const typeData = res.find(config => config.configFullKey === 'insurance'); + if (typeData) { + this.tabs = typeData.children; + this.selectedTab = typeData.children[0]; + + this.configList = this.formatItems(this.selectedTab.items); + } + } + }); + } + + changeType(type: any): void { + this.selectedTab = type; + this.configList = this.formatItems(type.items); + } + + saveAction(params: Array) { + const p = params.map(config => ({ + businessId: this.businessId, + configId: config.configId, + extendType: this.extendType, + id: config.extendId, + configItemId: config.id, + parentId: config.parentId, + itemData: config.itemData, + itemValue: config.itemValue, + remark: config.remark + })); + this.service.request('/api/mdc/pbc/sysConfigItemExtend/saveBatch', p).subscribe(res => { + if (res) { + this.service.msgSrv.success('修改配置成功'); + this.modalHelp.destroy(); + } + }); + } + + private formatItems(items: Array): Array { + if (items?.length > 0) { + return items + .map(item => ({ + ...item, + itemData: item.extendItemData || item.itemData, + itemValue: item.extendItemValue || item.itemValue + })) + .map(item => ({ + ...item, + remark: item.remark ? JSON.parse(item.remark) : null, + extend: item.extend ? JSON.parse(item.extend) : [], + // itemData: item.itemData ? JSON.parse(item.itemData) : item.itemData, + itemValue: item.itemValue ? JSON.parse(item.itemValue) : item.itemValue + })); + } + return []; + } +} diff --git a/src/app/shared/components/singlepage-setting/singlepage-setting.module.ts b/src/app/shared/components/singlepage-setting/singlepage-setting.module.ts new file mode 100644 index 00000000..3aba0231 --- /dev/null +++ b/src/app/shared/components/singlepage-setting/singlepage-setting.module.ts @@ -0,0 +1,24 @@ +/* + * @Description : + * @Version : 1.0 + * @Author : Shiming + * @Date : 2022-02-11 14:23:46 + * @LastEditors : Shiming + * @LastEditTime : 2022-02-11 14:30:15 + * @FilePath : \\tms-obc-web\\src\\app\\shared\\components\\singlepage-setting\\singlepage-setting.module.ts + * Copyright (C) 2022 huzhenhong. All rights reserved. + */ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { SinglepageSettingH5Component } from './singlepage-setting-h5/singlepage-setting-h5.component'; +import { SHARED_ZORRO_MODULES } from '../../shared-zorro.module'; +import { SHARED_DELON_MODULES } from '../../shared-delon.module'; +import { FormsModule } from '@angular/forms'; +import { SinglepageSettingModalComponent } from './singlepage-setting-modal/singlepage-setting-modal.component'; +const COMPONENTS = [SinglepageSettingH5Component, SinglepageSettingModalComponent]; +@NgModule({ + declarations: [...COMPONENTS], + imports: [CommonModule, FormsModule, SHARED_ZORRO_MODULES, SHARED_DELON_MODULES], + exports: [...COMPONENTS] +}) +export class SinglepageSettingModule {} diff --git a/src/app/shared/index.ts b/src/app/shared/index.ts index c4f6f3e2..c61dfbdd 100644 --- a/src/app/shared/index.ts +++ b/src/app/shared/index.ts @@ -1,7 +1,7 @@ /* * @Author: your name * @Date: 2021-11-29 10:04:12 - * @LastEditTime : 2022-01-25 20:34:23 + * @LastEditTime : 2022-02-11 14:31:22 * @LastEditors : Shiming * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE * @FilePath : \\tms-obc-web\\src\\app\\shared\\index.ts @@ -19,6 +19,7 @@ export * from './components/captcha/index'; export * from './components/amap/index'; export * from './components/dict-select/index'; export * from './components/dynamic-setting'; +export * from './components/singlepage-setting'; export * from './components/insurance-table/index'; // Utils