Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop

This commit is contained in:
潘晓云
2022-04-06 16:42:29 +08:00
33 changed files with 306 additions and 423 deletions

View File

@ -0,0 +1 @@
<g2-custom delay="100" (render)="render($event)"></g2-custom>

View File

@ -0,0 +1,81 @@
import { Component, ElementRef, Input, NgZone, OnChanges, OnInit, SimpleChanges, ViewChild } from '@angular/core';
import { Chart } from '@antv/g2';
import { DataService } from 'src/app/routes/datatable/services/data.service';
@Component({
selector: 'app-datatable-customindex-curve',
templateUrl: './curve.component.html',
styleUrls: ['./curve.component.less']
})
export class DatatableCustomindexCurveComponent implements OnInit, OnChanges {
el: any;
@Input() chartData: any;
chart: any;
constructor(private service: DataService, private ngZone: NgZone) {
}
ngOnChanges(changes: SimpleChanges): void {
if (this.chartData) {
// setTimeout(()=>{
// this.chart.render(true)
// }, 1000)
}
}
ngOnInit(): void {
}
reRender() {
setTimeout(() => {
this.chart.data(this.chartData);
this.chart.render();
}, 1000)
}
render(el: ElementRef<HTMLDivElement>): void {
this.el = el.nativeElement
setTimeout(() => {
this.ngZone.runOutsideAngular(() => this.init(this.el));
},500)
}
private init(el: HTMLElement): void {
this.chart = new Chart({
container: el,
autoFit: true,
height: 500,
});
this.chart.data(this.chartData);
this.chart.scale({
time: {
range: [0, 1],
},
number: {
nice: true,
},
});
this.chart.tooltip({
showCrosshairs: true,
shared: true,
});
this.chart.axis('number', {
label: {
formatter: (val: any) => {
return val;
},
},
});
this.chart
.line()
.position('time*number')
.color('name')
this.chart.render();
}
}

View File

@ -1,20 +1,30 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-04-06 13:20:56
* @LastEditors : Shiming
* @LastEditTime : 2022-04-06 15:00:01
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\customtable\\customindex\\customindex.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<!-- 页头 -->
<page-header-wrapper [title]="'客户报表'"></page-header-wrapper>
<div nz-row [nzGutter]="16">
<div nz-col class="gutter-row" [nzSpan]="6">
<g2-card [title]="'货主'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" contentHeight="46">
<g2-card [title]="'货主'" [bordered]="true" [total]="hzData?.total" [footer]="'已认证' + hzData?.auditPassTotal" contentHeight="46">
</g2-card>
</div>
<div nz-col class="gutter-row" [nzSpan]="6">
<g2-card [title]="'合伙人'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" contentHeight="46">
<g2-card [title]="'合伙人'" [bordered]="true" [total]="hhrData?.total" [footer]="'已认证' + hhrData?.auditPassTotal" contentHeight="46">
</g2-card>
</div>
<div nz-col class="gutter-row" [nzSpan]="6">
<g2-card [title]="'司机'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" contentHeight="46">
<g2-card [title]="'司机'" [bordered]="true" [total]="sjData?.total" [footer]="'已认证' + sjData?.auditPassTotal" contentHeight="46">
</g2-card>
</div>
<div nz-col class="gutter-row" [nzSpan]="6">
<g2-card [title]="'车辆'" [bordered]="true" [total]="'¥ 126,560.00'" footer="日访问量 12,423" contentHeight="46">
<g2-card [title]="'车辆'" [bordered]="true" [total]="clData?.total" [footer]="'已认证' + clData?.auditPassTotal" contentHeight="46">
</g2-card>
</div>
</div>
@ -29,17 +39,43 @@
<label nz-radio-button nzValue="define">自定义</label>
</nz-radio-group>
<div class="dateBox">
<nz-date-picker [(ngModel)]="date" [nzMode]="mode" [nzFormat]="dateFormat" *ngIf="mode !== 'define'" [nzDisabledDate]="disabledDate" (ngModelChange)="onChange($event)"></nz-date-picker>
<nz-range-picker [(ngModel)]="defineDate" [nzFormat]="dateFormat" *ngIf="mode === 'define'" [nzDisabledDate]="disabledDate" (ngModelChange)="onChange($event)"></nz-range-picker>
<nz-date-picker
[(ngModel)]="date"
[nzMode]="mode"
[nzFormat]="dateFormat"
*ngIf="mode !== 'define'"
[nzDisabledDate]="disabledDate"
(ngModelChange)="onChange($event)"
></nz-date-picker>
<nz-range-picker
[(ngModel)]="defineDate"
[nzFormat]="dateFormat"
*ngIf="mode === 'define'"
[nzDisabledDate]="disabledDate"
(ngModelChange)="onChange($event)"
></nz-range-picker>
</div>
</div>
</div>
</ng-template>
<st #st multiSort [columns]="columns" [ps]="20" [data]="service.$api_listOperationalReportPage"
<st
#st
multiSort
[columns]="columns"
[ps]="20"
[data]="reportData"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[scroll]="{ x: '1200px' }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [20, 50, 100] }"></st>
[scroll]="{ x: '1200px' }"
[res]="{ reName: { list: 'data', total: 'data.total' } }"
[page]="{ show: false, showSize: false, pageSizes: [20, 50, 100] }"
>
<ng-template sf-template="type" let-item>
<div *ngIf="item.type == '1'">货主</div>
<div *ngIf="item.type == '2'">合伙人</div>
<div *ngIf="item.type == '3'">司机</div>
<div *ngIf="item.type == '4'">车辆</div>
</ng-template>
</st>
</nz-card>
<nz-card nzTitle="用户新增报表" [nzExtra]="extraTemplate">
<ng-template #extraTemplate01>
@ -50,10 +86,15 @@
<label nz-radio-button nzValue="month"></label>
</nz-radio-group>
<div class="dateBox">
<nz-date-picker [nzDisabledDate]="disabledDate" [(ngModel)]="dateNext" [nzMode]="modeNext" (ngModelChange)="onChangeNext($event)"></nz-date-picker>
<nz-date-picker
[nzDisabledDate]="disabledDate"
[(ngModel)]="dateNext"
[nzMode]="modeNext"
(ngModelChange)="onChangeNext($event)"
></nz-date-picker>
</div>
</div>
</div>
</ng-template>
<app-operation-curve #curve [chartData]="chartData.lineChart"></app-operation-curve>
<app-datatable-customindex-curve #curve [chartData]="chartData?.lineChart"></app-datatable-customindex-curve>
</nz-card>

View File

@ -3,54 +3,58 @@ import { STColumn, STComponent } from '@delon/abc/st';
import { DatePipe, _HttpClient } from '@delon/theme';
import { differenceInCalendarDays } from 'date-fns';
import { DataService } from '../../../services/data.service';
import { OperationCurveComponent } from '../../operationtable/curve/curve.component';
import { DatatableCustomindexCurveComponent } from './curve/curve.component';
@Component({
selector: 'app-datatable-customindex',
templateUrl: './customindex.component.html',
styleUrls: ['./customindex.component.less'],
providers: [DatePipe]
})
export class DatatableCustomindexComponent implements OnInit {
@ViewChild('st') private readonly st!: STComponent;
@ViewChild('curve') private readonly curve!: OperationCurveComponent;
@ViewChild('curve') private readonly curve!: DatatableCustomindexCurveComponent;
type = 1;
mode = 'year';
date: any = null;
defineDate = [];
time: any = ['2022-01-01 00:00:00']
time: any = ['2022-01-01 00:00:00'];
dateFormat = 'yyyy';
today = new Date();
dateNext: any = null;
modeNext = 'year';
timeNext: any = ['2022-01-01 00:00:00']
timeNext: any = ['2022-01-01 00:00:00'];
chartData: any;
flag = false;
columns: STColumn[] = [
{ title: '用户类型', index: 'networkTransporterName', className: 'text-center' },
{ title: '用户总数', index: 'zsl', className: 'text-center' },
{ title: '已认证数量', index: 'yingsje', className: 'text-center' },
{ title: '活跃用户数', index: 'cys', className: 'text-center' },
{ title: '未激活用户数', index: 'yingfyf', className: 'text-center' },
{ title: '沉默用户数', index: 'yl', className: 'text-center' },
{ title: '流失用户数', index: 'djd', className: 'text-center' },
{ title: '流失率', index: 'ysz', className: 'text-center' }
{ title: '用户类型', render: 'type', className: 'text-center' },
{ title: '用户总数', index: '总数', className: 'text-center' },
{ title: '已认证数量', index: 'auditPassTotal', className: 'text-center' },
{ title: '活跃用户数', index: 'activeTotal', className: 'text-center' },
{ title: '未激活用户数', index: 'notActivationTotal', className: 'text-center' },
{ title: '沉默用户数', index: 'silentTotal', className: 'text-center' },
{ title: '流失用户数', index: 'drainTotal', className: 'text-center' },
{ title: '流失率', index: 'drainRate', className: 'text-center' }
];
hzData: any;
hhrData: any;
sjData: any;
clData: any;
reportData: any = [];
/**
* 查询参数
*/
get reqParams() {
if (this.mode === 'year') {
this.type = 1
this.type = 1;
} else if (this.mode === 'month') {
this.type = 2
this.type = 2;
} else if (this.mode === 'date') {
this.type = 3
this.type = 3;
} else {
this.type = 4
this.type = 4;
}
let params: any = {
time: this.time,
@ -61,50 +65,100 @@ export class DatatableCustomindexComponent implements OnInit {
return { ...params };
}
constructor(public service: DataService, private datePipe: DatePipe) { }
constructor(public service: DataService, private datePipe: DatePipe) {}
ngOnInit(): void {
this.initCurveData()
this.initCurveData();
}
initCurveData() {
let type = 1
let type = 1;
if (this.mode === 'year') {
type = 1
type = 1;
} else if (this.mode === 'month') {
type = 2
type = 2;
}
const params: any = {
time: this.timeNext,
type
};
this.flag = true
this.service.request(this.service.$api_operationalReportHistogram, params).subscribe(res => {
if (res) {
this.chartData = res
if (this.flag) {
this.curve.reRender()
// const params: any = {
// time: this.timeNext,
// type
// };
this.flag = true;
this.service
.request(this.service.$api_statistics_totalDetail, {
time: this.timeNext,
type: 1 //用户角色类型 1货主 2合伙人 3司机 4车辆
})
.subscribe(res => {
if (res) {
this.reportData.push(res);
}
});
this.service.request(this.service.$api_statistics_totalDetail, {
time: this.timeNext,
type: 2
}).subscribe(res => {
if (res) {
this.reportData.push(res);
}
})
});
this.service.request(this.service.$api_statistics_totalDetail, {
time: this.timeNext,
type: 3
}).subscribe(res => {
if (res) {
this.reportData.push(res);
}
});
this.service.request(this.service.$api_statistics_totalDetail, {
time: this.timeNext,
type: 4
}).subscribe(res => {
if (res) {
this.reportData.push(res);
this.st.reload();
}
});
this.service.request(this.service.$api_statistics_total, { type: 1 }).subscribe(res => {
if (res) {
this.hzData = res;
}
});
this.service.request(this.service.$api_statistics_total, { type: 2 }).subscribe(res => {
if (res) {
this.hhrData = res;
}
});
this.service.request(this.service.$api_statistics_total, { type: 3 }).subscribe(res => {
if (res) {
this.sjData = res;
}
});
this.service.request(this.service.$api_statistics_total, { type: 4 }).subscribe(res => {
if (res) {
this.clData = res;
}
});
}
changeData() {
if (this.mode === 'year') {
this.dateFormat = 'yyyy'
this.dateFormat = 'yyyy';
} else if (this.mode === 'month') {
this.dateFormat = 'yyyy-MM'
this.dateFormat = 'yyyy-MM';
} else {
this.dateFormat = 'yyyy-MM-dd'
this.dateFormat = 'yyyy-MM-dd';
}
}
onChange(result: any) {
if (this.mode === 'year') {
this.time = [this.datePipe.transform(this.date, 'yyyy') + '-01-01 00:00:00']
this.time = [this.datePipe.transform(this.date, 'yyyy') + '-01-01 00:00:00'];
} else if (this.mode === 'month') {
this.time = [this.datePipe.transform(this.date, 'yyyy-MM') + '-01 00:00:00']
this.time = [this.datePipe.transform(this.date, 'yyyy-MM') + '-01 00:00:00'];
} else if (this.mode === 'date') {
this.time = [this.datePipe.transform(this.date, 'yyyy-MM-dd') + ' 00:00:00']
this.time = [this.datePipe.transform(this.date, 'yyyy-MM-dd') + ' 00:00:00'];
} else {
this.time = [this.datePipe.transform(this.defineDate[0], 'yyyy-MM-dd') + '00:00:00', this.datePipe.transform(this.defineDate[1], 'yyyy-MM-dd') + ' 00:00:00']
this.time = [
this.datePipe.transform(this.defineDate[0], 'yyyy-MM-dd') + '00:00:00',
this.datePipe.transform(this.defineDate[1], 'yyyy-MM-dd') + ' 00:00:00'
];
}
this.st.reload({ ...this.reqParams });
}
@ -112,24 +166,22 @@ export class DatatableCustomindexComponent implements OnInit {
// Can not select days before today and today
differenceInCalendarDays(current, this.today) > 0;
changeDataNext() {
if(this.mode === 'year') {
this.dateFormat = 'yyyy'
} else if(this.mode === 'month') {
this.dateFormat = 'yyyy-MM'
if (this.mode === 'year') {
this.dateFormat = 'yyyy';
} else if (this.mode === 'month') {
this.dateFormat = 'yyyy-MM';
}
}
onChangeNext(result: any) {
if(result === null) {
return
if (result === null) {
return;
}
if(this.mode === 'year') {
this.timeNext = [this.datePipe.transform(this.dateNext, 'yyyy') + '-01-01 00:00:00']
} else if(this.mode === 'month') {
this.timeNext = [this.datePipe.transform(this.dateNext, 'yyyy-MM') + '-01 00:00:00']
if (this.mode === 'year') {
this.timeNext = [this.datePipe.transform(this.dateNext, 'yyyy') + '-01-01 00:00:00'];
} else if (this.mode === 'month') {
this.timeNext = [this.datePipe.transform(this.dateNext, 'yyyy-MM') + '-01 00:00:00'];
}
this.initCurveData()
this.initCurveData();
}
}

View File

@ -29,6 +29,7 @@ import { DatatableDatascreenComponent } from './components/datascreen/datascreen
import { FinancetablePillarComponent } from './components/financetable/pillar/pillar.component';
import { ComplianceCurveComponent } from './components/compliance/index/curve/curve.component';
import { BusitableCurveComponent } from './components/busitable/busiindex/curve/curve.component';
import { DatatableCustomindexCurveComponent } from './components/customtable/customindex/curve/curve.component';
const COMPONENTS: Type<void>[] = [
DatatableDataindexComponent,
@ -60,7 +61,8 @@ const COMPONENTS: Type<void>[] = [
DatatableDatascreenComponent,
FinancetablePillarComponent,
ComplianceCurveComponent,
BusitableCurveComponent
BusitableCurveComponent,
DatatableCustomindexCurveComponent
]

View File

@ -4,8 +4,8 @@
* @Author : Shiming
* @Date : 2021-12-27 10:30:56
* @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:14:59
* @FilePath : \\tms-obc-web\\src\\app\\routes\\account\\services\\account.service.ts
* @LastEditTime : 2022-04-06 13:47:25
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\services\\data.service.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -58,6 +58,12 @@ export class DataService extends BaseService {
$api_listMonitorSituation = `/api/sdc/reportComplianceMonitor/listMonitorSituation`;
// 客户报表-根据类型获取统计信息(card)
$api_statistics_total = `/api/mdc/cuc/statistics/total`;
// 客户报表-根据类型获取统计明细信息(table)
$api_statistics_totalDetail = `/api/mdc/cuc/statistics/totalDetail`;
constructor(public injector: Injector) {
super(injector);

View File

@ -29,7 +29,7 @@
{{headerInfo?.ltdAccountId}}
</se>
<se label="应付已核销" required>
{{headerInfo?.payMoney | currency}}
{{headerInfo?.ishrhxLabel}}
</se>
</div>
<div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" se-container [labelWidth]="150" col="1">

View File

@ -1,252 +0,0 @@
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
exports.__esModule = true;
exports.RechargeRecordComponent = void 0;
var core_1 = require("@angular/core");
var RechargeRecordComponent = /** @class */ (function () {
function RechargeRecordComponent(service, modal) {
var _this = this;
this.service = service;
this.modal = modal;
this.columns = this.initST();
this.searchSchema = this.initSF();
this.rechargeRemark = '';
this._$expand = false;
this.beforeReq = function (requestOptions) {
if (_this.sf) {
Object.assign(requestOptions.body, __assign({}, _this.sf.value));
}
return requestOptions;
};
}
RechargeRecordComponent.prototype.ngOnInit = function () { };
RechargeRecordComponent.prototype.addRemark = function (item) {
var _this = this;
this.rechargeRemark = item.rechargeRemark;
var modal = this.modal.create({
nzTitle: this.rechargeRemark ? '修改备注' : '添加备注',
nzContent: this.remarkodal,
nzFooter: [
{
type: 'primary',
label: '确认',
loading: function () { return _this.service.http.loading; },
onClick: function () {
modal.destroy();
}
}
]
});
};
RechargeRecordComponent.prototype.goBack = function () {
history.go(-1);
};
/**
* 重置表单
*/
RechargeRecordComponent.prototype.resetSF = function () {
this.sf.reset();
this._$expand = false;
};
/**
* 伸缩查询条件
*/
RechargeRecordComponent.prototype.expandToggle = function () {
var _a;
this._$expand = !this._$expand;
(_a = this.sf) === null || _a === void 0 ? void 0 : _a.setValue('/expand', this._$expand);
};
RechargeRecordComponent.prototype.exportList = function () {
this.service.downloadFile(this.service.$mock_url, __assign(__assign({}, this.sf.value), { pageSize: -1 }));
};
RechargeRecordComponent.prototype.initSF = function () {
var _this = this;
return {
properties: {
expand: {
type: 'boolean',
ui: {
hidden: true
}
},
rechargeNo: {
type: 'string',
title: '充值单号',
ui: {
placeholder: '请输入'
}
},
rechargeStatus: {
type: 'string',
title: '充值状态',
"enum": [
{ label: '全部', value: '' },
{ label: '充值中', value: '1' },
{ label: '充值失败', value: '2' },
{ label: '充值成功', value: '3' }
],
ui: {
widget: 'select',
placeholder: '请选择'
},
"default": ''
},
createTime: {
title: '充值时间',
type: 'string',
ui: {
widget: 'date',
mode: 'range',
format: 'yyyy-MM-dd'
}
},
roleName: {
type: 'string',
title: '账户名称',
ui: {
placeholder: '请输入',
autocomplete: 'off',
visibleIf: {
expand: function (value) { return value; }
}
}
},
accountType: {
type: 'string',
title: '账户类型',
"enum": [
{ label: '全部', value: '' },
{ label: '货主账户', value: '1' },
{ label: '司机账户', value: '2' },
{ label: '营商商账户', value: '3' }
],
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: function (value) { return value; }
}
},
"default": ''
},
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: function (value) { return value; }
},
allowClear: true,
asyncData: function () { return _this.service.getNetworkFreightForwarder(); }
}
},
bankType: {
type: 'string',
title: '银行类型',
"enum": [
{ label: '全部', value: '' },
{ label: '平安银行', value: '1' },
{ label: '浦发银行', value: '2' }
],
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: function (value) { return value; }
}
},
"default": ''
}
}
};
};
RechargeRecordComponent.prototype.initST = function () {
var _this = this;
return [
{ title: '充值时间', index: 'createTime', type: 'date', width: 180 },
{ title: '充值单号', index: 'rechargeNo', width: 140 },
{ title: '网络货运人', index: 'ltdName', width: 160 },
{ title: '银行类型', index: 'bankTypeLabel', width: 100 },
{ title: '账户类型', index: 'accountTypeLabel', width: 100 },
{ title: '账户名称', index: 'roleName', width: 160 },
{ title: '虚拟账户', index: 'virtualAccount', width: 100 },
{
title: '充值金额',
index: 'rechargeAmount',
width: 160,
type: 'widget',
className: 'text-right',
widget: { type: 'currency-chy', params: function (_a) {
var record = _a.record;
return ({ value: record.rechargeAmount });
} }
},
{ title: '充值银行账户', render: 'transferBankAccount', width: 200 },
{ title: '充值方式', index: 'payChannelLabel', width: 100 },
{ title: '充值状态', index: 'rechargeStatusLabel', width: 100 },
{ title: '银行流水号', index: 'paySerialNumber', width: 120 },
{
title: '操作',
width: 120,
fixed: 'right',
className: 'text-center',
buttons: [
{ type: 'divider' },
{
text: '查看回单<br>',
click: function (item) {
return _this.service.getReceiptUrl(item.receiptUrl, {
bankType: item.bankType,
rmYll: item.roleId,
snglFlgCd: item.paySerialNumber2,
bussType: '06',
ltdId: item.ltdId,
accountType: item.accountType
});
}
},
{
text: '添加备注',
click: function (item) { return _this.addRemark(item); }
}
]
}
];
};
__decorate([
core_1.ViewChild('st', { static: true })
], RechargeRecordComponent.prototype, "st");
__decorate([
core_1.ViewChild('sf', { static: false })
], RechargeRecordComponent.prototype, "sf");
__decorate([
core_1.ViewChild('remarkodal', { static: true })
], RechargeRecordComponent.prototype, "remarkodal");
RechargeRecordComponent = __decorate([
core_1.Component({
selector: 'app-recharge-record',
templateUrl: './recharge-record.component.html',
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
})
], RechargeRecordComponent);
return RechargeRecordComponent;
}());
exports.RechargeRecordComponent = RechargeRecordComponent;

View File

@ -34,7 +34,7 @@ export class RechargeRecordComponent implements OnInit {
};
addRemark(item: any) {
this.rechargeRemark = item.rechargeRemark;
this.rechargeRemark = item.remark;
const modal = this.modal.create({
nzTitle: this.rechargeRemark ? '修改备注' : '添加备注',
nzContent: this.remarkodal,
@ -44,7 +44,14 @@ export class RechargeRecordComponent implements OnInit {
label: '确认',
loading: () => this.service.http.loading,
onClick: () => {
modal.destroy();
this.service.request(this.service.$api_edit_remark, { id: item.id, remark: this.rechargeRemark }).subscribe(res => {
if (res) {
this.service.msgSrv.success('修改成功');
this.st.load(1);
modal.destroy();
}
});
return false;
}
}
]

View File

@ -76,6 +76,8 @@ export class FreightAccountService extends ShipperBaseService {
$api_get_abnormal_gold_page = '/api/fcc/rechargeInfo/list/page';
// 运营端获取账户余额交易明细
$api_get_account_blance = '/api/fcc/accountBalanceDetail/getAccountBalanceByPage';
// 添加备注
$api_edit_remark = '/api/fcc/rechargeInfo/addRemark';
// 查询费用单抬头
$api_get_cost_page = '/api/fcc/ficoFeeH/list/page';

View File

@ -3,7 +3,7 @@
<nz-card class="search-box">
<div nz-row nzGutter="8">
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90, grid: { span: 8 } } }" [compact]="true" [button]="'none'"></sf>
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90, grid: { lg: 8, md: 12, sm: 12, xs: 24 } } }" [compact]="true" [button]="'none'"></sf>
</div>
<div nz-col [nzSpan]="6" [nzOffset]="_$expand ? 18 : 0" [class.expend-options]="_$expand" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)"acl [acl-ability]="['LOGS-LOGS-list']">查询</button>

View File

@ -11,32 +11,21 @@
<nz-card class="search-box">
<div nz-row nzGutter="8">
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90, grid: { span: 8 } } }" [compact]="true" [button]="'none'"></sf>
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90, grid: {lg: 8, md: 12, sm: 12, xs: 24 } } }"
[compact]="true" [button]="'none'"></sf>
</div>
<div nz-col [nzSpan]="6" [nzOffset]="_$expand ? 18 : 0" [class.expend-options]="_$expand" class="text-right">
<button
nz-button
nzType="primary"
[nzLoading]="service.http.loading"
(click)="st?.load(1)"
acl
[acl-ability]="['LOGS-SUPPLY-LOGS-list']"
>查询</button
>
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)" acl
[acl-ability]="['LOGS-SUPPLY-LOGS-list']">查询</button>
<button nz-button (click)="resetSF()">重置</button>
</div>
</div>
</nz-card>
<nz-card class="content-box">
<st
#st
[data]="service.$api_get_systemt_logs"
[columns]="columns"
<st #st [data]="service.$api_get_systemt_logs" [columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false"
[scroll]="{ y: '370px' }"
></st>
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [loading]="false"
[scroll]="{ y: '370px' }"></st>
</nz-card>

View File

@ -34,7 +34,7 @@ export class SystemSupplyLogsComponent implements OnInit {
}
},
time: {
title: '登录时间',
title: '操作时间',
type: 'string',
ui: {
widget: 'sl-from-to-search',

View File

@ -4,7 +4,7 @@
<nz-card class="search-box">
<div nz-row nzGutter="8">
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90,grid: { span: 8 } }}" [compact]="true"
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90,grid: { lg: 8, md: 12, sm: 12, xs: 24 } }}" [compact]="true"
[button]="'none'"></sf>
</div>
<div nz-col [nzSpan]="6" [nzOffset]="_$expand ? 18 : 0" [class.expend-options]="_$expand" class="text-right">

View File

@ -13,7 +13,7 @@
<nz-card class="search-box">
<div nz-row nzGutter="8">
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90, grid: { span: 8 } } }" [compact]="true" [button]="'none'"></sf>
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 90, grid: { lg: 8, md: 12, sm: 12, xs: 24 } } }" [compact]="true" [button]="'none'"></sf>
</div>
<div nz-col [nzSpan]="6" [nzOffset]="_$expand ? 18 : 0" [class.expend-options]="_$expand" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)" acl [acl-ability]="['LOGS-VERSION-LOGS-list']">查询</button>

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2021-12-24 16:58:02
* @LastEditors : Shiming
* @LastEditTime : 2022-04-01 10:58:50
* @LastEditTime : 2022-04-06 15:40:05
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk-detail-change\\bulk-detail-change.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -275,7 +275,7 @@
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}%
</div>
</div>
<div>车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div>
<div *ngIf ="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div>
</nz-card>

View File

@ -156,7 +156,7 @@
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}%
</div>
</div>
<div>车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div>
<div *ngIf ="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div>
</nz-card>
<nz-card nzTitle="附件信息" #distannce4>

View File

@ -851,10 +851,6 @@ export class OrderManagementBulkComponent implements OnInit {
}
// 导出
exprot() {
this.service.request(this.service.$api_get_asyncExportBulkList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams,this.service.$api_get_asyncExportBulkList);
}
}

View File

@ -696,10 +696,6 @@ export class OrderManagementComplianceAuditComponent implements OnInit {
}
// 导出
exprot() {
this.service.request(this.service.$api_get_asyncExportSpotCheckList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams, this.service.$api_get_asyncExportSpotCheckList);
}
}

View File

@ -578,10 +578,6 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
}
// 导出
exprot() {
this.service.request(this.service.$api_get_asyncExportExamineBillList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams, this.service.$api_get_asyncExportExamineBillList);
}
}

View File

@ -534,10 +534,6 @@ export class OrderManagementRiskComponent implements OnInit {
}
// 导出
exprot() {
this.service.request(this.service.$api_get_asyncExportRiskBillList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams, this.service.$api_get_asyncExportRiskBillList);
}
}

View File

@ -253,7 +253,7 @@
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}%
</div>
<div>车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div>
<div *ngIf ="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? "/" + i?.payeePhone : ''}}</div>
</nz-card>
<nz-card nzTitle="附件信息" #distannce4>

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2021-12-23 13:39:58
* @LastEditors : Shiming
* @LastEditTime : 2022-03-23 14:49:18
* @LastEditTime : 2022-04-06 15:12:24
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail-change\\vehicle-detail-change.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -83,15 +83,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
{
title: '支付状态',
className: 'text-center',
index: 'paymentStatus',
type: 'badge',
width: '120px',
badge: {
'1': { text: '待申请', color: 'warning' },
'2': { text: '已支付', color: 'success' },
'3': { text: '已拒绝', color: 'warning' },
'4': { text: '申请中', color: 'warning' }
}
index: 'paymentStatusLabel',
}
];
trajectory = 'car';

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2021-12-28 14:42:03
* @LastEditors : Shiming
* @LastEditTime : 2022-04-01 11:06:21
* @LastEditTime : 2022-04-06 15:39:20
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail\\vehicle-detail.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
@ -170,7 +170,7 @@
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2) }}%
</div>
<div>车队长:{{ i?.payeeName }}{{ i?.payeePhone ? '/' + i?.payeePhone : '' }}</div>
<div *ngIf ="i?.payeePhone && i?.payeePhone !== i?.driverPhone">车队长:{{ i?.payeeName }}{{ i?.payeePhone ? '/' + i?.payeePhone : '' }}</div>
</nz-card>
<nz-card nzTitle="附件信息" #distannce4>

View File

@ -4,7 +4,7 @@
* @Author : Shiming
* @Date : 2021-12-28 14:42:03
* @LastEditors : Shiming
* @LastEditTime : 2022-03-29 16:08:56
* @LastEditTime : 2022-04-06 15:12:10
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle-detail\\vehicle-detail.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
@ -55,15 +55,7 @@ export class OrderManagementVehicleDetailComponent implements OnInit {
{
title: '支付状态',
className: 'text-center',
index: 'paymentStatus',
type: 'badge',
width: '120px',
badge: {
'1': { text: '待申请', color: 'warning' },
'2': { text: '已支付', color: 'success' },
'3': { text: '已拒绝', color: 'warning' },
'4': { text: '申请中', color: 'warning' }
}
index: 'paymentStatusLabel',
}
];
constructor(

View File

@ -866,10 +866,6 @@ export class OrderManagementVehicleComponent extends BasicTableComponent impleme
}
// 导出
exprot() {
this.service.request(this.service.$api_get_asyncExportWholeList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams, this.service.$api_get_asyncExportWholeList);
}
}

View File

@ -568,10 +568,6 @@ export class SupplyManagementBulkComponent implements OnInit {
userAction() {}
// 导出
exportFire() {
this.service.request(this.service.$api_asyncExportBulkList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams, this.service.$api_asyncExportBulkList);
}
}

View File

@ -685,10 +685,6 @@ export class SupplyManagementVehicleComponent implements OnInit {
}
// 导出
exportFire() {
this.service.request(this.service.$api_asyncExportWholeList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams, this.service.$api_asyncExportWholeList);
}
}

View File

@ -1,7 +1,7 @@
<!--
* @Author: your name
* @Date: 2021-12-03 15:31:52
* @LastEditTime : 2022-03-30 17:31:38
* @LastEditTime : 2022-04-06 15:37:59
* @LastEditors : Shiming
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\bulk-detail\\bulk-detail.component.html
@ -176,7 +176,7 @@
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}%
</div>
</div>
<div>车队长:{{ i?.payee?.name }}/{{ i?.payee?.phone }}/{{ i?.payee?.idNo }}</div>
<div *ngIf ="i?.payee?.phone && i?.payee?.phone !== i?.driverVo.phone">车队长:{{ i?.payee?.name }}/{{ i?.payee?.phone }}/{{ i?.payee?.idNo }}</div>
</nz-card>
<nz-card nzTitle="附件信息" #distannce4>

View File

@ -104,6 +104,9 @@ export class WaybillManagementBulkComponent implements OnInit {
searchDebounceTime: 300,
searchLoadingText: '搜索中...',
allowClear: true,
visibleIf: {
_$expand: (value: boolean) => value
},
onSearch: (q: any) => {
console.log(q)
let str =q.replace(/^\s+|\s+$/g,"");
@ -477,10 +480,6 @@ export class WaybillManagementBulkComponent implements OnInit {
}
// 导出
exprot() {
this.service.request(this.service.$api_asyncExportBulkList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams,this.service.$api_asyncExportBulkList)
}
}

View File

@ -1,7 +1,7 @@
<!--
* @Author: your name
* @Date: 2021-12-03 15:31:52
* @LastEditTime : 2022-04-01 11:12:17
* @LastEditTime : 2022-04-06 15:37:30
* @LastEditors : Shiming
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
* @FilePath : \\tms-obc-web\\src\\app\\routes\\waybill-management\\components\\vehicle-detail\\vehicle-detail.component.html
@ -157,7 +157,7 @@
总计:<span style="color: #da001b; font-size: 18px">{{ i?.totalAmount | currency }}</span> (运费{{ i?.totalFreight | currency }}
附加费{{ i?.totalSurcharge | currency }},附加费率{{ (i?.totalRate * 100).toFixed(2)}}%
</div>
<div>车队长:{{ i?.payee?.name }}/{{ i?.payee?.phone }}/{{ i?.payee?.idNo }}</div>
<div *ngIf ="i?.payee?.phone && i?.payee?.phone !== i?.driverVo.phone">车队长:{{ i?.payee?.name }}/{{ i?.payee?.phone }}/{{ i?.payee?.idNo }}</div>
</nz-card>
<nz-card nzTitle="附件信息" #distannce4>

View File

@ -99,6 +99,9 @@ export class WaybillManagementVehicleComponent implements OnInit {
searchDebounceTime: 300,
searchLoadingText: '搜索中...',
allowClear: true,
visibleIf: {
_$expand: (value: boolean) => value
},
onSearch: (q: any) => {
let str = q.replace(/^\s+|\s+$/g, '');
if (str) {
@ -486,10 +489,6 @@ export class WaybillManagementVehicleComponent implements OnInit {
}
// 导出
exprot() {
this.service.request(this.service.$api_asyncExportWholeList, this.reqParams).subscribe((res: any) => {
if (res) {
this.service.msgSrv.success('导出成功,请去下载中心下载!');
}
});
this.service.asyncExport(this.reqParams, this.service.$api_asyncExportWholeList);
}
}