Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop
This commit is contained in:
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-04-07 17:57:23
|
* @Date : 2022-04-07 17:57:23
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-04-07 19:28:24
|
* @LastEditTime : 2022-04-13 10:22:35
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\curve\\curve.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\curve\\curve.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -75,7 +75,7 @@ export class DatatableCustomindexCurveMinComponent implements OnInit,OnChanges {
|
|||||||
this.chart = new Chart({
|
this.chart = new Chart({
|
||||||
container: el,
|
container: el,
|
||||||
autoFit: true,
|
autoFit: true,
|
||||||
height: 200,
|
height: 320,
|
||||||
});
|
});
|
||||||
let value: any = []
|
let value: any = []
|
||||||
this.service.request(this.service.$api_getTradingTrend).subscribe((res: any) => {
|
this.service.request(this.service.$api_getTradingTrend).subscribe((res: any) => {
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-04-06 10:57:56
|
* @Date : 2022-04-06 10:57:56
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-04-07 19:51:32
|
* @LastEditTime : 2022-04-13 10:33:08
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\datascreen.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\datascreen.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -47,11 +47,11 @@
|
|||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card nzTitle="实时货源">
|
<nz-card nzTitle="实时货源">
|
||||||
<st
|
<st
|
||||||
[scroll]="{ y: '300px' }"
|
|
||||||
#st
|
#st
|
||||||
multiSort
|
multiSort
|
||||||
bordered
|
bordered
|
||||||
[columns]="columns"
|
[columns]="columns"
|
||||||
|
[scroll]="{ y: '320px' }"
|
||||||
[data]="service.$api_getRealTimeSupply"
|
[data]="service.$api_getRealTimeSupply"
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||||
[res]="{ reName: { list: 'data' } }"
|
[res]="{ reName: { list: 'data' } }"
|
||||||
@ -59,7 +59,7 @@
|
|||||||
[loading]="service.http.loading"
|
[loading]="service.http.loading"
|
||||||
>
|
>
|
||||||
<ng-template st-row="index" let-item let-index="index">
|
<ng-template st-row="index" let-item let-index="index">
|
||||||
{{ index }}
|
{{ index + 1 }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="weight" let-item let-index="index">
|
<ng-template st-row="weight" let-item let-index="index">
|
||||||
{{ item.weight ? item.weight + '吨' : '' }}
|
{{ item.weight ? item.weight + '吨' : '' }}
|
||||||
@ -86,10 +86,10 @@
|
|||||||
</nz-col>
|
</nz-col>
|
||||||
</nz-row>
|
</nz-row>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<app-datatable-customindex-map style="max-height: 600px" #map [chartData]="chartData"></app-datatable-customindex-map>
|
<app-datatable-customindex-map style="max-height: 680px" #map [chartData]="chartData"></app-datatable-customindex-map>
|
||||||
<nz-card>
|
<nz-card>
|
||||||
<nz-row [nzGutter]="24">
|
<nz-row [nzGutter]="24">
|
||||||
<g2-bar #bar height="200" [delay]='500' repaint='true' [title]="'本月发货量排名'" [data]="salesData2" (ready)='genData()'></g2-bar>
|
<g2-bar #bar height="310" [delay]='500' repaint='true' [title]="'本月发货量排名'" [data]="salesData2" (ready)='genData()'></g2-bar>
|
||||||
</nz-row>
|
</nz-row>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
</div>
|
</div>
|
||||||
@ -157,7 +157,7 @@
|
|||||||
#st
|
#st
|
||||||
multiSort
|
multiSort
|
||||||
bordered
|
bordered
|
||||||
[scroll]="{y: '300px'}"
|
[scroll]="{y: '290px'}"
|
||||||
[columns]="orderColumns"
|
[columns]="orderColumns"
|
||||||
[data]="service.$api_getRealTimeWaybillRiskControl"
|
[data]="service.$api_getRealTimeWaybillRiskControl"
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqOrderParams }"
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqOrderParams }"
|
||||||
|
|||||||
@ -5,7 +5,7 @@ import { map } from 'rxjs/operators';
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-04-06 10:57:56
|
* @Date : 2022-04-06 10:57:56
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-04-07 19:48:19
|
* @LastEditTime : 2022-04-13 10:25:50
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\datascreen.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\datascreen.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -127,7 +127,7 @@ export class DatatableDatascreenComponent implements OnInit {
|
|||||||
*/
|
*/
|
||||||
initST() {
|
initST() {
|
||||||
this.columns = [
|
this.columns = [
|
||||||
{ title: '序号', render: 'index', className: 'text-center', width: '70px' },
|
{ title: '序号', render: 'index', className: 'text-center', width: '70px', },
|
||||||
{ title: '发货地', index: 'loadAddress', className: 'text-center', width: '90px' },
|
{ title: '发货地', index: 'loadAddress', className: 'text-center', width: '90px' },
|
||||||
{ title: '卸货地', index: 'dischargeAddress', className: 'text-center', width: '90px' },
|
{ title: '卸货地', index: 'dischargeAddress', className: 'text-center', width: '90px' },
|
||||||
{ title: '货物', index: 'goodsName', className: 'text-center', width: '90px' },
|
{ title: '货物', index: 'goodsName', className: 'text-center', width: '90px' },
|
||||||
@ -138,7 +138,7 @@ export class DatatableDatascreenComponent implements OnInit {
|
|||||||
this.orderColumns = [
|
this.orderColumns = [
|
||||||
{ title: '运单号', index: 'wayCode', className: 'text-center', width: '150px' },
|
{ title: '运单号', index: 'wayCode', className: 'text-center', width: '150px' },
|
||||||
{ title: '司机/车辆', index: 'carNo', className: 'text-center', width: '120px' },
|
{ title: '司机/车辆', index: 'carNo', className: 'text-center', width: '120px' },
|
||||||
{ title: '货主', index: 'shipperName', className: 'text-center', width: '70px' },
|
{ title: '货主', index: 'shipperName', className: 'text-center', width: '200px' },
|
||||||
{ title: '时间', index: 'createTime', className: 'text-center', width: '200px' },
|
{ title: '时间', index: 'createTime', className: 'text-center', width: '200px' },
|
||||||
{ title: '异常预警', index: 'warningTypeLabel', className: 'text-center', width: '120px' }
|
{ title: '异常预警', index: 'warningTypeLabel', className: 'text-center', width: '120px' }
|
||||||
];
|
];
|
||||||
|
|||||||
@ -4,8 +4,8 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-04-06 17:57:07
|
* @Date : 2022-04-06 17:57:07
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-04-07 19:44:32
|
* @LastEditTime : 2022-04-13 10:17:44
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\map\\map.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\map\\map.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
<g2-custom delay="200" (render)="render($event)" ></g2-custom>
|
<g2-custom div style="height: 680px; " delay="200" (render)="render($event)" ></g2-custom>
|
||||||
@ -49,7 +49,6 @@ export class DatatableCustomindexMapComponent implements OnInit, OnChanges {
|
|||||||
this.chart = new Chart({
|
this.chart = new Chart({
|
||||||
container: el,
|
container: el,
|
||||||
autoFit: true,
|
autoFit: true,
|
||||||
height: 680,
|
|
||||||
padding: [0, 0]
|
padding: [0, 0]
|
||||||
});
|
});
|
||||||
this.chart.tooltip({
|
this.chart.tooltip({
|
||||||
@ -108,6 +107,10 @@ export class DatatableCustomindexMapComponent implements OnInit, OnChanges {
|
|||||||
});
|
});
|
||||||
console.log(value);
|
console.log(value);
|
||||||
this.userData = value
|
this.userData = value
|
||||||
|
|
||||||
|
if (!(this.userData instanceof Array) || this.userData.length === 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
this.userDv = this.ds.createView().source(this.userData).transform({
|
this.userDv = this.ds.createView().source(this.userData).transform({
|
||||||
geoDataView: this.worldMap,
|
geoDataView: this.worldMap,
|
||||||
field: 'name',
|
field: 'name',
|
||||||
|
|||||||
@ -172,6 +172,8 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
type: 'default',
|
type: 'default',
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
tipsModal.destroy();
|
tipsModal.destroy();
|
||||||
|
this.st?.reload();
|
||||||
|
this.getGoodsSourceStatistical();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -182,10 +184,14 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
if(!result?.failNumber) {
|
if(!result?.failNumber) {
|
||||||
this.service.msgSrv.error('没有失败数据!');
|
this.service.msgSrv.error('没有失败数据!');
|
||||||
tipsModal.destroy();
|
tipsModal.destroy();
|
||||||
|
this.st?.reload();
|
||||||
|
this.getGoodsSourceStatistical();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.service.downloadFile(this.service.$api_getFailUploadGoodsOperateResource, result.ids)
|
this.service.downloadFile(this.service.$api_getFailUploadGoodsOperateResource, result.ids)
|
||||||
tipsModal.destroy();
|
tipsModal.destroy();
|
||||||
|
this.st?.reload();
|
||||||
|
this.getGoodsSourceStatistical();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
@ -194,51 +200,6 @@ export class SupplyManagementVehicleComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改运费
|
|
||||||
*/
|
|
||||||
updateFreight(item: any) {
|
|
||||||
const modalRef = this.modal.create({
|
|
||||||
nzTitle: '货源导入',
|
|
||||||
nzWidth: 600,
|
|
||||||
nzContent: SupplyManagementImportSupplyComponent,
|
|
||||||
nzComponentParams: {
|
|
||||||
// i: item
|
|
||||||
},
|
|
||||||
nzFooter: null
|
|
||||||
});
|
|
||||||
modalRef.afterClose.subscribe(result => {
|
|
||||||
if (result) {
|
|
||||||
const tipsModal = this.modal.create({
|
|
||||||
nzTitle: '上传提示',
|
|
||||||
nzWidth: 600,
|
|
||||||
nzContent: `<div>文件上传完成!成功<span class="text-blue-dark">${result?.successNumber}</span>条,失败<span class="text-red-dark">${result?.failNumber}</span>条!</div>`,
|
|
||||||
nzFooter: [
|
|
||||||
{
|
|
||||||
label: '取 消',
|
|
||||||
type: 'default',
|
|
||||||
onClick: () => {
|
|
||||||
tipsModal.destroy();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
label: '下载失败数据',
|
|
||||||
type: 'primary',
|
|
||||||
onClick: () => {
|
|
||||||
this.service.downloadFile(this.service.$api_getFailUploadGoodsOperateResource, result.ids);
|
|
||||||
// this.service.request(this.service.$api_getFailUploadGoodsOperateResource, result.ids).subscribe((res: any) => {
|
|
||||||
// if (res) {
|
|
||||||
// console.log(res);
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
console.log(111);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 重新指派
|
* 重新指派
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-03 11:10:14
|
* @Date : 2021-12-03 11:10:14
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-11 10:35:44
|
* @LastEditTime : 2022-04-13 10:41:09
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\model\\import-supply\\import-supply.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\model\\import-supply\\import-supply.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -51,5 +51,5 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="modal-footer text-right">
|
<div class="modal-footer text-right">
|
||||||
<button nz-button type="button" (click)="close()">取消</button>
|
<button nz-button type="button" (click)="close()">取消</button>
|
||||||
<button nz-button type="submit" nzType="primary" (click)="save()">确定</button>
|
<button nz-button type="submit" nzType="primary" [nzLoading]="load" (click)="save()">确定</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-03-01 15:13:03
|
* @Date : 2022-03-01 15:13:03
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-03-11 10:33:44
|
* @LastEditTime : 2022-04-13 10:41:08
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\model\\import-supply\\import-supply.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\model\\import-supply\\import-supply.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -31,6 +31,7 @@ export class SupplyManagementImportSupplyComponent implements OnInit {
|
|||||||
status: boolean = true
|
status: boolean = true
|
||||||
files2: any;
|
files2: any;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
|
load = false
|
||||||
ui: SFUISchema = {};
|
ui: SFUISchema = {};
|
||||||
networkTransporter: any; // 网络货运人id
|
networkTransporter: any; // 网络货运人id
|
||||||
uploadUrl = apiConf.file_upload_url;
|
uploadUrl = apiConf.file_upload_url;
|
||||||
@ -154,12 +155,11 @@ export class SupplyManagementImportSupplyComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
save(): void {
|
save(): void {
|
||||||
console.log(this?.networkTransporter)
|
|
||||||
console.log(this.sf.value)
|
|
||||||
if(!this.sf.value?.shipperAppUserId || !this?.networkTransporter || !this.sf.value?.enterpriseProjectId || !this.sf.value?.fileName) {
|
if(!this.sf.value?.shipperAppUserId || !this?.networkTransporter || !this.sf.value?.enterpriseProjectId || !this.sf.value?.fileName) {
|
||||||
this.service.msgSrv.error('请填写必填项并上传文件!')
|
this.service.msgSrv.error('请填写必填项并上传文件!')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
this.load =true;
|
||||||
const formData : any= new FormData();
|
const formData : any= new FormData();
|
||||||
this.files?.forEach((file: any) => {
|
this.files?.forEach((file: any) => {
|
||||||
formData.append('file', file);
|
formData.append('file', file);
|
||||||
@ -172,6 +172,7 @@ export class SupplyManagementImportSupplyComponent implements OnInit {
|
|||||||
this.service.request(this.service.$api_goodsResourceOperateImport, formData).subscribe(res => {
|
this.service.request(this.service.$api_goodsResourceOperateImport, formData).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('导入成功');
|
this.service.msgSrv.success('导入成功');
|
||||||
|
this.load =false;
|
||||||
this.modal.destroy({ ...res });
|
this.modal.destroy({ ...res });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@ -212,7 +212,7 @@ export class InvoiceRequestedComponent {
|
|||||||
label: '手工处理',
|
label: '手工处理',
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
const params = {
|
const params = {
|
||||||
ficoVatappBillVOList: this.selectedRows.map(item => {
|
ficoVatappHVOList: this.selectedRows.map(item => {
|
||||||
const i = Object.assign({}, { ...item });
|
const i = Object.assign({}, { ...item });
|
||||||
delete i._values;
|
delete i._values;
|
||||||
delete i._rowClassName;
|
delete i._rowClassName;
|
||||||
@ -236,7 +236,7 @@ export class InvoiceRequestedComponent {
|
|||||||
label: '自动开票',
|
label: '自动开票',
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
const params = {
|
const params = {
|
||||||
ficoVatappBillVOList: this.selectedRows.map(item => {
|
ficoVatappHVOList: this.selectedRows.map(item => {
|
||||||
const i = Object.assign({}, { ...item });
|
const i = Object.assign({}, { ...item });
|
||||||
delete i._values;
|
delete i._values;
|
||||||
delete i._rowClassName;
|
delete i._rowClassName;
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { ActivatedRoute, Router } from '@angular/router';
|
||||||
import { STColumn, STColumnBadge, STComponent, STData } from '@delon/abc/st';
|
import { STColumn, STColumnBadge, STComponent, STData } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFDateWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { ModalHelper } from '@delon/theme';
|
import { ModalHelper } from '@delon/theme';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { of, Subject } from 'rxjs';
|
import { of, Subject } from 'rxjs';
|
||||||
@ -135,7 +135,7 @@ export class VehicleComponentsAuditComponent implements OnInit {
|
|||||||
expand: (value: boolean) => value
|
expand: (value: boolean) => value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
// approvalStatus: {
|
// approvalStatus: {
|
||||||
// type: 'string',
|
// type: 'string',
|
||||||
// title: '审核状态',
|
// title: '审核状态',
|
||||||
@ -155,9 +155,22 @@ export class VehicleComponentsAuditComponent implements OnInit {
|
|||||||
// },
|
// },
|
||||||
// },
|
// },
|
||||||
// },
|
// },
|
||||||
|
approvalPassTime: {
|
||||||
|
type: 'string',
|
||||||
|
title: '审核通过时间',
|
||||||
|
ui: {
|
||||||
|
widget: 'sl-from-to-search',
|
||||||
|
format: 'yyyy-MM-dd',
|
||||||
|
placeholder: '请选择',
|
||||||
|
nzShowTime: true,
|
||||||
|
visibleIf: {
|
||||||
|
expand: (value: boolean) => value
|
||||||
|
}
|
||||||
|
} as SFDateWidgetSchema
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.ui = { '*': { spanLabelFixed: 90, grid: { span: 8, gutter: 4 }, enter: () => this.st.load() } };
|
this.ui = { '*': { spanLabelFixed: 120, grid: { span: 8, gutter: 4 }, enter: () => this.st.load() } };
|
||||||
}
|
}
|
||||||
|
|
||||||
initST() {
|
initST() {
|
||||||
@ -186,6 +199,7 @@ export class VehicleComponentsAuditComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{ title: '申请时间', width: '180px', className: 'text-center', index: 'createTime' },
|
{ title: '申请时间', width: '180px', className: 'text-center', index: 'createTime' },
|
||||||
|
{ title: '审核通过时间', width: '180px', className: 'text-center', index: 'approvalPassTime' },
|
||||||
{
|
{
|
||||||
title: '操作',
|
title: '操作',
|
||||||
fixed: 'right',
|
fixed: 'right',
|
||||||
|
|||||||
Reference in New Issue
Block a user