diff --git a/proxy.conf.js b/proxy.conf.js index 10071e14..cb9ce42c 100644 --- a/proxy.conf.js +++ b/proxy.conf.js @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2022-01-18 09:51:21 * @LastEditors : Shiming - * @LastEditTime : 2022-03-23 15:21:39 + * @LastEditTime : 2022-03-31 14:02:38 * @FilePath : \\tms-obc-web\\proxy.conf.js * Copyright (C) 2022 huzhenhong. All rights reserved. */ @@ -20,7 +20,7 @@ module.exports = { // } '//api': { target: { - host: 'tms-api-dev.eascs.com', + host: 'tms-api-test.eascs.com', protocol: 'https:', port: 443 }, diff --git a/src/app/routes/datatable/components/compliance/index/index.component.ts b/src/app/routes/datatable/components/compliance/index/index.component.ts index 162d6391..4de2d93e 100644 --- a/src/app/routes/datatable/components/compliance/index/index.component.ts +++ b/src/app/routes/datatable/components/compliance/index/index.component.ts @@ -5,7 +5,6 @@ import { format } from 'date-fns'; import { SFComponent, SFDateWidgetSchema, SFRadioWidgetSchema, SFSchema, SFUISchema } from '@delon/form'; import { G2TimelineData, G2TimelineMap } from '@delon/chart/timeline'; import { Chart } from '@antv/g2'; -const DataSet = require('@antv/data-set'); @Component({ selector: 'app-datatable-compliance-index', templateUrl: './index.component.html', diff --git a/src/app/routes/datatable/components/financetable/curve/curve.component.html b/src/app/routes/datatable/components/financetable/curve/curve.component.html new file mode 100644 index 00000000..bcfe240b --- /dev/null +++ b/src/app/routes/datatable/components/financetable/curve/curve.component.html @@ -0,0 +1,5 @@ + + + + + diff --git a/src/app/routes/datatable/components/financetable/curve/curve.component.less b/src/app/routes/datatable/components/financetable/curve/curve.component.less new file mode 100644 index 00000000..e69de29b diff --git a/src/app/routes/datatable/components/financetable/curve/curve.component.ts b/src/app/routes/datatable/components/financetable/curve/curve.component.ts new file mode 100644 index 00000000..620d2029 --- /dev/null +++ b/src/app/routes/datatable/components/financetable/curve/curve.component.ts @@ -0,0 +1,168 @@ +import { Component, ElementRef, NgZone, OnInit, ViewChild } from '@angular/core'; +import { G2MiniAreaClickItem } from '@delon/chart/mini-area'; +import { DataService } from '../../../services/data.service'; +// import DataSet from '@antv/data-set'; +const DataSet = require('@antv/data-set'); +import { Chart } from '@antv/g2'; +@Component({ + selector: 'app-financetable-curve', + templateUrl: './curve.component.html', + styleUrls: ['./curve.component.less'] +}) +export class FinanceTableCurveComponent implements OnInit { + constructor(private service: DataService, private ngZone: NgZone) {} + + ngOnInit(): void {} + + handleClick(data: G2MiniAreaClickItem): void { + this.service.msgSrv.info(`${data.item.x} - ${data.item.y}`); + } + + render(el: ElementRef): void { + this.ngZone.runOutsideAngular(() => this.initBar(el.nativeElement)); + } + private initBar(el: HTMLElement): void { + const data = [ + { name: '已收金额(元)', 月份: 'Jan.', 月均降雨量: 18.9 }, + { name: '已收金额(元)', 月份: 'Feb.', 月均降雨量: 28.8 }, + { name: '已收金额(元)', 月份: 'Mar.', 月均降雨量: 39.3 }, + { name: '已收金额(元)', 月份: 'Apr.', 月均降雨量: 81.4 }, + { name: '已收金额(元)', 月份: 'May', 月均降雨量: 47 }, + { name: '已收金额(元)', 月份: 'Jun.', 月均降雨量: 20.3 }, + { name: '已收金额(元)', 月份: 'Jul.', 月均降雨量: 24 }, + { name: '已收金额(元)', 月份: 'Aug.', 月均降雨量: 35.6 }, + { name: '已付运费(元)', 月份: 'Jan.', 月均降雨量: 12.4 }, + { name: '已付运费(元)', 月份: 'Feb.', 月均降雨量: 23.2 }, + { name: '已付运费(元)', 月份: 'Mar.', 月均降雨量: 34.5 }, + { name: '已付运费(元)', 月份: 'Apr.', 月均降雨量: 99.7 }, + { name: '已付运费(元)', 月份: 'May', 月均降雨量: 52.6 }, + { name: '已付运费(元)', 月份: 'Jun.', 月均降雨量: 35.5 }, + { name: '已付运费(元)', 月份: 'Jul.', 月均降雨量: 37.4 }, + { name: '已付运费(元)', 月份: 'Aug.', 月均降雨量: 42.4 } + ]; + + const chart = new Chart({ + container: el, + autoFit: true, + height: 500 + }); + chart.data(data); + chart.scale('月均降雨量', { + nice: true + }); + chart.tooltip({ + showMarkers: false, + shared: true + }); + // 图表下方图形文字自定义 + chart.legend({ + items: [ + { + name: '已收金额(元)', + value: 'node_load1', + marker: { + symbol: 'circle', + style: { fill: '#6395f9' } + } + }, + { + name: '已付运费(元)', + value: 'node_load1', + marker: { + symbol: 'circle', + style: { fill: '#62daab' } + } + } + ] + }); + + chart + .interval() + .position('月份*月均降雨量') + .color('name') + .adjust([ + { + type: 'dodge', + marginRatio: 0 + } + ]); + + chart.render(); + } + + render2(el: ElementRef): void { + this.ngZone.runOutsideAngular(() => this.initCurve(el.nativeElement)); + } + + private initCurve(el: HTMLElement): void { + const chart = new Chart({ + container: el, + autoFit: true, + height: 400 + }); + // 以三组数据为例, 需要展示 91/92/93年中a/b/c数据走势 + const data = [ + { data: '1月', label: '平均附加费率', value: 5 }, + { data: '2月', label: '平均附加费率', value: 10 }, + { data: '3月', label: '平均附加费率', value: 25 }, + { data: '4月', label: '平均附加费率', value: 35 }, + { data: '5月', label: '平均附加费率', value: 15 }, + { data: '6月', label: '平均附加费率', value: 5 }, + { data: '7月', label: '平均附加费率', value: 95 }, + { data: '8月', label: '平均附加费率', value: 45 } + ]; + + chart.data(data); + //刻度自定义 + chart.scale({ + data: { + range: [0, 1] + }, + value: { + min: 0, + nice: true + } + }); + // 图表下方图形文字自定义 + chart.legend({ + items: [ + { + name: '平均附加费率', + value: 'node_load1', + marker: { + symbol: 'circle', + style: { fill: '#6193f7' } + } + } + ] + }); + // 提示自定义 + chart.tooltip({ + showCrosshairs: true, + shared: true + }); + + //数据格式化 + chart.axis('value', { + label: { + formatter: val => { + return val + ' %'; + } + } + }); + // 在x*y的坐标点上按z值绘制线条, 如果z值相同将使用直线连接 + chart + .line() + .position('data*value') + .color('label') + .tooltip('label*value', (name: any, value: any) => { + return { + name: name, + value: value + '%' + }; + }); + // 在x*y的坐标上按z值绘制圆点 + // chart.point().position('data*value').size(4).color('label').shape('circle'); + chart.render(); + } +} diff --git a/src/app/routes/datatable/components/financetable/financetable.component.html b/src/app/routes/datatable/components/financetable/financetable.component.html index 56092666..a25ffb3f 100644 --- a/src/app/routes/datatable/components/financetable/financetable.component.html +++ b/src/app/routes/datatable/components/financetable/financetable.component.html @@ -1,6 +1,68 @@ - - - - + + + +
+ +
+ + + + + + +
+ + +
+ +
+
+ +
+ + + {{item.czcgje | currency}} + + + {{item.yingsje | currency}} + + + {{item.yisje | currency}} + + + {{item.yingfyf | currency}} + + + {{item.yifyf | currency}} + + + {{item.ykpje | currency}} + + + {{item.dkpje | currency}} + +
+ + +
+ + + +
+ + + + +
+ +
+
+
+
+ +
\ No newline at end of file diff --git a/src/app/routes/datatable/components/financetable/financetable.component.less b/src/app/routes/datatable/components/financetable/financetable.component.less new file mode 100644 index 00000000..6b4b1cba --- /dev/null +++ b/src/app/routes/datatable/components/financetable/financetable.component.less @@ -0,0 +1,11 @@ +.chooseBox{ + display: flex; +} +.timeBox{ + display: flex; + margin: 0 0 0 10px; +} +.dateBox{ + display: inline-block; + margin: 0 0 0 10px; +} \ No newline at end of file diff --git a/src/app/routes/datatable/components/financetable/financetable.component.ts b/src/app/routes/datatable/components/financetable/financetable.component.ts index 00e0f1b3..0c64cc9e 100644 --- a/src/app/routes/datatable/components/financetable/financetable.component.ts +++ b/src/app/routes/datatable/components/financetable/financetable.component.ts @@ -1,45 +1,124 @@ import { Component, OnInit, ViewChild } from '@angular/core'; import { STColumn, STComponent } from '@delon/abc/st'; import { SFSchema } from '@delon/form'; -import { ModalHelper, _HttpClient } from '@delon/theme'; +import { DatePipe, ModalHelper, _HttpClient } from '@delon/theme'; +import { DataService } from '../../services/data.service'; +import { differenceInCalendarDays } from 'date-fns'; @Component({ selector: 'app-datatable-financetable', templateUrl: './financetable.component.html', + styleUrls: ['./financetable.component.less'], + providers: [DatePipe] }) export class DatatableFinancetableComponent implements OnInit { - url = `/user`; - searchSchema: SFSchema = { - properties: { - no: { - type: 'string', - title: '编号' - } - } - }; @ViewChild('st') private readonly st!: STComponent; + type = 1; + mode = 'year'; + date: any = null; + defineDate = []; + time: any = ['2022-01-01 00:00:00'] + dateFormat = 'yyyy-MM-dd'; + dateNext: any = null; + modeNext = 'year'; + timeNext: any = ['2022-01-01 00:00:00'] + today = new Date(); + enterpriseInfoId = '' + enterpriseInfoIdPie = '' + interManlist: any = [] columns: STColumn[] = [ - { title: '编号', index: 'no' }, - { title: '调用次数', type: 'number', index: 'callNo' }, - { title: '头像', type: 'img', width: '50px', index: 'avatar' }, - { title: '时间', type: 'date', index: 'updatedAt' }, - { - title: '', - buttons: [ - // { text: '查看', click: (item: any) => `/form/${item.id}` }, - // { text: '编辑', type: 'static', component: FormEditComponent, click: 'reload' }, - ] - } + { title: '运营主体', index: 'networkTransporterName', className: 'text-center' }, + { title: '客户预存款', index: 'czcgje',render: 'czcgje', className: 'text-center' }, + { title: '应收金额', index: 'yingsje',render: 'yingsje', className: 'text-center' }, + { title: '已收金额', index: 'yisje',render: 'yisje', className: 'text-center' }, + { title: '应付运费', index: 'yingfyf', render: 'yingfyf',className: 'text-center' }, + { title: '已付运费', index: 'yifyf',render: 'yifyf', className: 'text-center' }, + { title: '已开票金额', index: 'ykpje',render: 'ykpje', className: 'text-center' }, + { title: '待开票金额', index: 'dkpje',render: 'dkpje', className: 'text-center' }, + { title: '应收附加费', index: 'yingsfjf', className: 'text-center' }, + { title: '已收附加费', index: 'yisfjf', className: 'text-center' }, + { title: '平均附加费率', index: 'fjfl', className: 'text-center' } ]; + /** + * 查询参数 + */ + get reqParams() { + if (this.mode === 'year') { + this.type = 1 + } else if (this.mode === 'month') { + this.type = 2 + } else if (this.mode === 'date') { + this.type = 3 + } else { + this.type = 4 + } + let params: any = { + time: this.time, + type: this.type + }; - constructor(private http: _HttpClient, private modal: ModalHelper) { } + delete params._$expand; + return { ...params }; + } - ngOnInit(): void { } + constructor(public service: DataService, private datePipe: DatePipe) { } + ngOnInit(): void { + this.initData() + } + initData() { + this.service.getNetworkFreightForwarder().subscribe(res => { + this.interManlist = res + this.enterpriseInfoId = res[0].value + this.enterpriseInfoIdPie = res[0].value + }) + } - add(): void { - // this.modal - // .createStatic(FormEditComponent, { i: { id: 0 } }) - // .subscribe(() => this.st.reload()); + changeData() { + if (this.mode === 'year') { + this.dateFormat = 'yyyy' + } else if (this.mode === 'month') { + this.dateFormat = 'yyyy-MM' + } else { + 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'] + } else if (this.mode === 'month') { + 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'] + } 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.st.reload({ ...this.reqParams }); + } + disabledDate = (current: Date): boolean => + // Can not select days before today and today + differenceInCalendarDays(current, this.today) > 0; + exportFun() { + + } + changeCurve(){ + + } + changePie(){ + + } + changeDataNext() { + if(this.mode === 'year') { + this.dateFormat = 'yyyy' + } else if(this.mode === 'month') { + this.dateFormat = 'yyyy-MM' + } + } + onChangeNext(result: any) { + 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'] + } } } diff --git a/src/app/routes/datatable/datatable.module.ts b/src/app/routes/datatable/datatable.module.ts index ac3f8d2f..2929d78c 100644 --- a/src/app/routes/datatable/datatable.module.ts +++ b/src/app/routes/datatable/datatable.module.ts @@ -25,6 +25,7 @@ import { DatatableReportingFundInfoComponent } from './reporting/components/fund import { BusitableCurveComponent } from './components/busitable/busiindex/curve/curve.component'; import { OperationPillarComponent } from './components/operationtable/pillar/pillar.component'; import { OperationCurveComponent } from './components/operationtable/curve/curve.component'; +import { FinanceTableCurveComponent } from './components/financetable/curve/curve.component'; const COMPONENTS: Type[] = [ DatatableDataindexComponent, @@ -51,7 +52,9 @@ const COMPONENTS: Type[] = [ DatatableReportingFundInfoComponent, BusitableCurveComponent, OperationPillarComponent, - OperationCurveComponent + OperationCurveComponent, + DatatableReportingFundInfoComponent, + FinanceTableCurveComponent ] diff --git a/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.html b/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.html index ab8abf9d..ec41a240 100644 --- a/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.html +++ b/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.html @@ -1,5 +1,5 @@ - diff --git a/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.ts b/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.ts index ee1f57f6..74fedc47 100644 --- a/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.ts +++ b/src/app/routes/datatable/reporting/components/fund-info/fund-info.component.ts @@ -19,7 +19,7 @@ export class DatatableReportingFundInfoComponent implements OnInit { get reqParams() { - return {}; + return { capitalCode: this?.record?.orderCode }; } constructor(public service: ReportingService, private modalRef: NzModalRef, public router: Router) { @@ -35,13 +35,34 @@ export class DatatableReportingFundInfoComponent implements OnInit { initST() { this.columns = [ { title: '序号', type: 'no', className: 'text-center', width: '60px', }, - { title: '监管平台字段', index: 'orderStatus', className: 'text-center', width: '120px', }, - { title: '系统字段', index: 'orderStatus', className: 'text-center', width: '100px', }, + { title: '监管平台字段', index: 'thirdPartyFieldName', className: 'text-center', width: '120px', }, + { title: '系统字段', index: 'checkFieldName', className: 'text-center', width: '100px', }, { title: '归属模块', index: 'orderStatus', className: 'text-center', width: '120px', }, - { title: '是否必填', index: 'orderStatus', className: 'text-center', width: '100px', }, - { title: '上传值', index: 'orderStatus', className: 'text-center', width: '150px', }, - { title: '本地校验', index: 'orderStatus', className: 'text-center', width: '100px', }, - { title: '错误内容', index: 'orderStatus', className: 'text-center', width: '150px', }, + { + title: '是否必填', + index: 'orderStatus', + className: 'text-center', + width: '100px', + type: 'enum', + enum: { + '0': '非必填', + '1': '必填', + }, + }, + { title: '上传值', index: 'fieldValue', className: 'text-center', width: '150px', }, + { + title: '本地校验', + index: 'checkStatus', + className: 'text-center', + type: 'enum', + enum: { + '0': '校验中', + '1': '通过', + '2': '不通过' + }, + width: '100px', + }, + { title: '错误内容', index: 'remark', className: 'text-center', width: '150px', }, ] } @@ -71,4 +92,5 @@ export class DatatableReportingFundInfoComponent implements OnInit { } + } diff --git a/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.html b/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.html index 07ad3e63..ed76d2ea 100644 --- a/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.html +++ b/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.html @@ -28,7 +28,8 @@ + [page]="{ show: true, showSize: true, pageSizes: [1,10,20, 50, 100] }" [loading]="false" + (change)="changeSt($event)"> {{item?.billStatusLabel}} @@ -48,10 +49,10 @@ {{item?.billStatusLabel}} -
{{item?.tolalAmount | currency :' '}}
+
{{item?.tolalAmount | currency }}
-
{{item?.payAmount | currency :' '}}
+
{{item?.payAmount | currency }}
diff --git a/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.ts b/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.ts index fd6157e3..cc0563a2 100644 --- a/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.ts +++ b/src/app/routes/datatable/reporting/components/fund-reporting/fund-reporting.component.ts @@ -1,10 +1,11 @@ import { Component, OnInit, ViewChild } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; -import { STColumn, STComponent, STData } from '@delon/abc/st'; +import { STChange, STColumn, STComponent, STData } from '@delon/abc/st'; import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form'; import { ShipperBaseService } from '@shared'; import { NzModalService } from 'ng-zorro-antd/modal'; import { ReportingService } from '../../services/reporting.service'; +import { DatatableReportingFundInfoComponent } from '../fund-info/fund-info.component'; import { DatatableReportingUploadSettingComponent } from '../upload-setting/upload-setting.component'; import { DatatableReportingVerifyResultComponent } from '../verify-result/verify-result.component'; @@ -28,8 +29,9 @@ export class DatatableFundReportingComponent implements OnInit { { name: '异常', value: '4' }, { name: '全部', value: '' } ]; - selectedIndex = ''; //选择的项目 + selectedIndex = '1'; //选择的项目 serviceTel = ''; + selectedRows: any[] = []; constructor( public service: ReportingService, private router: Router, @@ -51,7 +53,7 @@ export class DatatableFundReportingComponent implements OnInit { */ get reqParams() { const params = Object.assign({}, this.sf?.value || {}, { - representationsStatus: this.selectedIndex, + uploadStatus: this.selectedIndex }); delete params._$expand; return { ...params }; @@ -60,9 +62,9 @@ export class DatatableFundReportingComponent implements OnInit { /** * 选中行 */ - get selectedRows() { - return this.st?.list.filter((item: any) => item.checked) || []; - } + // get selectedRows() { + // return this.st?.list.filter((item: any) => item.checked) || []; + // } /** * 伸缩查询条件 @@ -217,12 +219,12 @@ export class DatatableFundReportingComponent implements OnInit { { title: '', type: 'checkbox', className: 'text-center', width: '60px', }, { title: '上传状态', render: 'uploadStatus', className: 'text-center', width: '120px', }, { title: '本地校验', render: 'verifyStatus', className: 'text-center', width: '120px', }, - { title: '流水单号', index: 'serialNumberCode', className: 'text-center', width: '150px', }, + { title: '流水单号', index: 'serialNumberCode', className: 'text-center', width: '190px', }, { title: '订单号', render: 'orderCode', className: 'text-center', - width: '150px', + width: '180px', }, { title: '运单号', render: 'wayBillCode', className: 'text-center', width: '150px', }, { @@ -237,15 +239,15 @@ export class DatatableFundReportingComponent implements OnInit { { title: '车牌颜色', index: 'carColor', className: 'text-center', width: '180px' }, { title: '总金额', render: 'tolalAmount', className: 'text-center', width: '250px' }, - { title: '付款方式', index: 'payType', className: 'text-center', width: '180px' }, + { title: '付款方式', index: 'payTypeLabel', className: 'text-center', width: '180px' }, { title: '车队长', index: 'payee', className: 'text-center', width: '250px' }, { title: '收款账户', index: 'collectionAccount', className: 'text-center', width: '200px' }, { title: '收款银行', index: 'bankTypeLabel', className: 'text-center', width: '200px' }, - { title: '银行流水号', index: 'bankSerialNumber', className: 'text-center', width: '150px' }, + { title: '银行流水号', index: 'bankSerialNumber', className: 'text-center', width: '180px' }, { title: '实际支付金额', render: 'payAmount', className: 'text-center', width: '150px' }, - { title: '交易时间', index: 'transactionTime', className: 'text-center', width: '150px' }, + { title: '交易时间', index: 'transactionTime', className: 'text-center', width: '180px' }, { title: '上传次数', index: 'uploadFrequency', className: 'text-center', width: '120px' }, { title: '上传时间', index: 'uploadTime', className: 'text-center', width: '180px' }, ]; @@ -268,9 +270,11 @@ export class DatatableFundReportingComponent implements OnInit { nzOkText: '确定', nzCancelText: '取消', nzOnOk: () => { - this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + const ids = this.selectedRows.map(i => i?.id); + this.service.request(this.service.$api_fund_reporting_recall, ids).subscribe((res: any) => { if (res) { this.service.msgSrv.success('撤销成功'); + this.search(); } }) @@ -281,7 +285,7 @@ export class DatatableFundReportingComponent implements OnInit { } selectChange(item: any) { - this.selectedIndex = item?.representationsStatus || ''; + this.selectedIndex = item?.value || ''; setTimeout(() => { this.st.load(1); }) @@ -326,7 +330,8 @@ export class DatatableFundReportingComponent implements OnInit { this.openWainingModal('请选择需要上传的数据'); return; } - this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + const ids = this.selectedRows.map(i => i?.id); + this.service.request(this.service.$api_fund_reporting_upload, ids).subscribe((res: any) => { if (res) { this.service.msgSrv.success('上传成功'); this.search(); @@ -354,13 +359,13 @@ export class DatatableFundReportingComponent implements OnInit { /** * 查看校验结果 */ - viewResult(item: any) { + viewResult(record: any) { const modalRef = this.modal.create({ nzTitle: '校验结果', nzWidth: 1200, - nzContent: DatatableReportingVerifyResultComponent, + nzContent: DatatableReportingFundInfoComponent, nzComponentParams: { - record: item + record }, nzFooter: null }); @@ -380,6 +385,7 @@ export class DatatableFundReportingComponent implements OnInit { search() { + this.selectedRows = []; this.st.load(1); } @@ -398,5 +404,45 @@ export class DatatableFundReportingComponent implements OnInit { }) } + changeSt(e: STChange): void { + + if (e.type === 'checkbox') { + const checkRows = (e.checkbox as STData[]) || []; + //判断当前页是否有选中的行 + if (checkRows.length === 0) { + // 当前页没有存在已勾选的行,移除之前所记录的当前页的行 + const stList = this.st.list; + stList.forEach(item => { + this.selectedRows = this.selectedRows.filter((e: any) => e.id !== item.id); + }) + } else { + //添加新增的行 + checkRows.forEach((item: any) => { + const newSelectedList = this.selectedRows.filter((r: any) => r.id === item.id); + if (newSelectedList.length === 0) { + this.selectedRows.push(item); + + } + }) + // 移除取消选中的行 + const stList = this.st.list; + stList.forEach(item => { + if (!item.checked) { + const index = this.selectedRows.findIndex(_item => item.id === _item.id); + if (index !== -1) this.selectedRows.splice(index, 1); + } + }) + } + } else if (e.type === 'loaded') { + // 页面加载时勾选 + (e?.loaded || []).forEach((r: any) => { + this.selectedRows.forEach((x) => { + if (x.id === r.id) { + r.checked = true; + } + }); + }); + } + } } diff --git a/src/app/routes/datatable/reporting/services/reporting.service.ts b/src/app/routes/datatable/reporting/services/reporting.service.ts index bc10de77..ff73672a 100644 --- a/src/app/routes/datatable/reporting/services/reporting.service.ts +++ b/src/app/routes/datatable/reporting/services/reporting.service.ts @@ -12,7 +12,10 @@ export class ReportingService extends BaseService { $api_get_upload_setting = ``; // 修改上传设置 $api_upload_setting_save = ``; // 修改上传设置 - $api_get_fund_reporting_page = `/api/fcc/fundUploadHead/list/page`; + $api_get_fund_reporting_page = `/api/fcc/fundUploadHead/list/page`; // 资金上报列表 + $api_fund_reporting_upload = `/api/fcc/fundUploadHead/uploadFundNumber`; // 资金批量上传 + $api_fund_reporting_recall = `/api/fcc/fundUploadHead/recallUploadFundNumber`; //资金批量撤回 + $api_get_fund_valid_result = `/api/fcc/capitalFieldCheck/getCapitalFieldCheckList`; // 查询资金校验表 constructor(public injector: Injector) { super(injector); } diff --git a/src/app/routes/order-management/components/complaint-detail/complaint-detail.component.ts b/src/app/routes/order-management/components/complaint-detail/complaint-detail.component.ts index 1c0a7051..f40d2d70 100644 --- a/src/app/routes/order-management/components/complaint-detail/complaint-detail.component.ts +++ b/src/app/routes/order-management/components/complaint-detail/complaint-detail.component.ts @@ -34,7 +34,6 @@ export class OrderManagementComplaintDetailComponent implements OnInit { } ngOnInit(): void { - if (this.id) { this.getDetail(this.id); @@ -64,7 +63,7 @@ export class OrderManagementComplaintDetailComponent implements OnInit { initSF() { this.schema = { properties: { - complaintCauseLabel: { + drvComplaintCauseLabel: { title: '投诉原因', type: 'string', maxLength: 30, @@ -82,7 +81,7 @@ export class OrderManagementComplaintDetailComponent implements OnInit { change: (value, orgData) => console.log(value, orgData), } as SFSelectWidgetSchema, }, - complainantPartyLabel: { + handlerIdLabel: { title: '司机', type: 'string', maxLength: 30, diff --git a/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.ts b/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.ts index 1ee4249a..a5228fed 100644 --- a/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.ts +++ b/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.ts @@ -532,13 +532,13 @@ export class OrderManagementReceiptsAuditComponent implements OnInit { } // 批量生成电子单据 sign1(item?: any) { - if (this.selectedRows.length <= 0) { + if (this.selectedRows?.length <= 0) { this.service.msgSrv.error('请选择订单!') return } let params: any[] = []; this.selectedRows.forEach(item => { - params.push(item.id); + params.push(item?.id); }); this.modal.confirm({ nzTitle: `已选择${this.selectedRows.length}条订单,确认批量生成电子单据吗?`, @@ -555,10 +555,10 @@ export class OrderManagementReceiptsAuditComponent implements OnInit { // this.getGoodsSourceStatistical(); // }) { - this.service.downloadFile(this.service.$api_createBillTakeGoods,{billIds: params}) + this.service.downloadFile(this.service.$api_createBillTakeGoods,{billIds: params.join(',')}) - this.service.downloadFile(this.service.$api_createBillDischargeGoods,{billIds: params})} + this.service.downloadFile(this.service.$api_createBillDischargeGoods,{billIds: params.join(',')})} }); } diff --git a/src/app/routes/order-management/components/vehicle/vehicle.component.html b/src/app/routes/order-management/components/vehicle/vehicle.component.html index cc8d7995..835a7e4c 100644 --- a/src/app/routes/order-management/components/vehicle/vehicle.component.html +++ b/src/app/routes/order-management/components/vehicle/vehicle.component.html @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2022-01-12 10:52:50 * @LastEditors : Shiming - * @LastEditTime : 2022-03-28 11:10:20 + * @LastEditTime : 2022-03-31 16:05:06 * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\vehicle\\vehicle.component.html * Copyright (C) 2022 huzhenhong. All rights reserved. --> @@ -82,7 +82,7 @@
- {{ data.expenseName }}:{{ data.price | currency }} + {{ data.expenseName }}:{{ data?.expenseCode === 'FL' ? (data.price * 100 + '%' ) : (data.price | currency) }} 待申请 已支付 diff --git a/src/app/routes/order-management/components/vehicle/vehicle.component.ts b/src/app/routes/order-management/components/vehicle/vehicle.component.ts index 37d2336c..55002520 100644 --- a/src/app/routes/order-management/components/vehicle/vehicle.component.ts +++ b/src/app/routes/order-management/components/vehicle/vehicle.component.ts @@ -761,6 +761,12 @@ export class OrderManagementVehicleComponent extends BasicTableComponent impleme }, nzFooter: null }); + modalRef.afterClose.subscribe((res: boolean) => { + if (res) { + this.resetSF; + this.st.load(); + } + }); } revoke(item: any) { this.modal.confirm({ diff --git a/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.html b/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.html index f08ba3c6..f830ca80 100644 --- a/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.html +++ b/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.html @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2021-12-15 13:17:42 * @LastEditors : Shiming - * @LastEditTime : 2022-03-11 09:53:23 + * @LastEditTime : 2022-03-31 14:20:41 * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\confir-receipt\\confir-receipt.component.html * Copyright (C) 2022 huzhenhong. All rights reserved. --> @@ -22,13 +22,16 @@ {{item.PRE | currency}} - {{ item.RECE | currency }} + {{item.RECE | currency}} - {{ item.BACK | currency }} + {{item.BACK | currency}} - {{ item.traiPrice | currency }} + {{item.surcharge + item.traiPrice | currency}} + + + {{item.surcharge | currency}} diff --git a/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.ts b/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.ts index 6d6170e4..fa5b8958 100644 --- a/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.ts +++ b/src/app/routes/order-management/modal/vehicle/confir-receipt/confir-receipt.component.ts @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2021-12-15 13:17:42 * @LastEditors : Shiming - * @LastEditTime : 2022-03-02 13:52:27 + * @LastEditTime : 2022-03-31 17:36:46 * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\modal\\vehicle\\confir-receipt\\confir-receipt.component.ts * Copyright (C) 2022 huzhenhong. All rights reserved. */ @@ -74,7 +74,7 @@ export class VehicleConfirReceiptComponent implements OnInit { console.log(res); if (res) { this.service.msgSrv.success('确认签收成功!'); - this.modal.destroy(); + this.modal.destroy(true); } }); } @@ -121,7 +121,9 @@ export class VehicleConfirReceiptComponent implements OnInit { cost.RECE = element.price; } else if (element.expenseName === '回单付' || element.expenseCode === 'BACK') { cost.BACK = element.price; - } else if (element.expenseName === '总费用') { + } else if (element.expenseCode === 'ATT') { + cost.surcharge = element.price; + } else if (element.expenseCode === 'TOTAL') { cost.traiPrice = element.price; } }); @@ -160,6 +162,11 @@ export class VehicleConfirReceiptComponent implements OnInit { index: 'BACK', render:'BACK' }, + { + title: '附加费', + index: 'surcharge', + render:'surcharge' + }, { title: '总运费', index: 'traiPrice', diff --git a/src/app/routes/partner/partner-list/components/index/partner-list.component.ts b/src/app/routes/partner/partner-list/components/index/partner-list.component.ts index 7d1cafb2..d970bbd7 100644 --- a/src/app/routes/partner/partner-list/components/index/partner-list.component.ts +++ b/src/app/routes/partner/partner-list/components/index/partner-list.component.ts @@ -398,6 +398,7 @@ export class PartnerListComponent { width: 150, type: 'badge', badge: { + 0: { text: '未发起', color: 'default' }, 10: { text: '待合伙人签约', color: 'default' }, 15: { text: '签约中', color: 'processing' }, 20: { text: '平台签约完成', color: 'success' }, @@ -411,9 +412,8 @@ export class PartnerListComponent { type: 'badge', badge: { 0: { text: '未发起', color: 'default' }, - 10: { text: '待审核', color: 'processing' }, - 20: { text: '审核通过', color: 'success' }, - 30: { text: '驳回', color: 'error' } + 10: { text: '审核失败', color: 'error' }, + 20: { text: '审核通过', color: 'success' } } }, { diff --git a/src/app/routes/partner/partner-list/components/personal-partner-detail/personal-partner-detail.component.ts b/src/app/routes/partner/partner-list/components/personal-partner-detail/personal-partner-detail.component.ts index 9cf0a9fe..ab33519c 100644 --- a/src/app/routes/partner/partner-list/components/personal-partner-detail/personal-partner-detail.component.ts +++ b/src/app/routes/partner/partner-list/components/personal-partner-detail/personal-partner-detail.component.ts @@ -81,6 +81,13 @@ export class PersonalPartnerDetailComponent implements OnInit { ...new Set((this.detailData?.cityCodesList as any[]).map(city => city.provinceCode)) ]; } + if (this.detailData?.channelIdLabel) { + const channel = (this.detailData.channelIdLabel as string).split('/'); + Object.assign(this.detailData, { + channelName: channel[0], + channelMobile: channel[1] + }); + } } }); } @@ -285,7 +292,7 @@ export class PersonalPartnerDetailComponent implements OnInit { buttons: [ { text: '详情', - click: (item) => this.service.showChangeDetail(item.id) + click: item => this.service.showChangeDetail(item.id) } ] } diff --git a/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.html b/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.html index 23ed8a52..7eb10959 100644 --- a/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.html +++ b/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.html @@ -188,26 +188,26 @@ - + - + - +
- +
@@ -219,14 +219,22 @@
+ +  货源曝光率 +10   +  车源匹配率 +10 + + +  货源曝光率 +20   +  车源匹配率 +20 + - 香港、澳门、台湾、西藏、新疆不予承保,单次运输保额仅限200万元以内,详见《投保告知》 + ①香港、澳门、台湾、西藏、新疆不予承保,②单次运输保额仅限200万元以内,③保险详细内容及注意事项请见《保险告知函》
@@ -241,74 +249,41 @@
+
运费信息
-
+
- + - + - + {{ i.value | currency }} - {{ i.value | currency }}(费率:{{ currentRate | number: '0.2-4' }}%) + {{ i.value | currency }}(费率:{{ currentRate | number: + '0.2-4' }}%) {{ i.value | currency }} -
-
-
- +
+
+
-
+
 天内支付运费
-
diff --git a/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.ts b/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.ts index b2a27627..3c8848cd 100644 --- a/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.ts +++ b/src/app/routes/supply-management/components/onecar-publish/onecar-publish.component.ts @@ -448,6 +448,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { }; } + initSF5() { this.schema5 = { properties: { @@ -461,13 +462,13 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { map((res: any) => { return [...res]; }) - ); + ) }, change: (tag: any, org: any) => { - if (tag === '3') { + if(tag === '3'){ this.sf5.setValue('/insurancePremium', null); this.sf5.setValue('/insuranceRate', null); - } else { + }else { this.getInsurersPrice(tag); } } @@ -477,29 +478,23 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { type1: { type: 'string', title: '', - enum: ['货源曝光率 +10', '车源匹配率 +10'], - readOnly: true, ui: { - widget: 'checkbox', + widget: 'custom', visibleIf: { insuranceType: (value: string) => value === '0' } - } as SFCheckboxWidgetSchema, - default: ['货源曝光率 +10', '车源匹配率 +10'] + } , }, type2: { type: 'string', title: '', - enum: ['货源曝光率 +20', '车源匹配率 +20'], - readOnly: true, ui: { - widget: 'checkbox', + widget: 'custom', visibleIf: { insuranceType: (value: string) => value === '1' } - } as SFCheckboxWidgetSchema, - default: ['货源曝光率 +20', '车源匹配率 +20'] + } }, insurancePremium: { type: 'string', title: '服务包费用', - readOnly: true, + readOnly:true, ui: { visibleIf: { insuranceType: (value: string) => value !== '3' } } @@ -526,9 +521,9 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { widget: 'custom', visibleIf: { insuranceType: (value: string) => value === '1' } } - } + }, }, - required: ['insurancePremium'] + required: [ 'insurancePremium'] }; this.ui5 = { '*': { @@ -1022,6 +1017,8 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { paymentDays: this.sf7.value.paymentDays, estimatedKilometers: this.totalDistance, estimatedTravelTime: this.totalTime, + subtotal :this.sf7.value.subtotal, + total:this.sf7.value.total, insurancePackagedGoods: this.sf4.value.insurancePackagedGoods, goodsValue: this.sf4.value.goodsValue }; @@ -1419,7 +1416,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { // 计算保价费金额 getInsurersPrice(insuranceType = this.sf5.value.insuranceType) { console.log(this.totalDistance); - if (insuranceType !== '3' && this.sf4.value?.goodsValue >= 50000 && this.totalDistance > 0) { + if (insuranceType !== '3' && this.totalDistance > 0) { const params = { insuranceType, goodsValue: this.sf4.value.goodsValue, @@ -1436,4 +1433,14 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { }); } } + // 运费信息价格变更 + priceChange(event:any, i:any){ + i.setValue(event); + if(event>=99999){ + this.modalService.warning({ + nzTitle: '可输入的最大金额为99999元', + }); + } + this.payChange() + } } diff --git a/src/app/routes/supply-management/components/release-publish/release-publish.component.html b/src/app/routes/supply-management/components/release-publish/release-publish.component.html index 7423108d..b3be726e 100644 --- a/src/app/routes/supply-management/components/release-publish/release-publish.component.html +++ b/src/app/routes/supply-management/components/release-publish/release-publish.component.html @@ -180,7 +180,6 @@ -
货物信息
@@ -191,26 +190,26 @@ - + - + - +
- +
@@ -222,14 +221,22 @@
+ +  货源曝光率 +10   +  车源匹配率 +10 + + +  货源曝光率 +20   +  车源匹配率 +20 + - 香港、澳门、台湾、西藏、新疆不予承保,单次运输保额仅限200万元以内,详见《投保告知》 + ①香港、澳门、台湾、西藏、新疆不予承保,②单次运输保额仅限200万元以内,③保险详细内容及注意事项请见《保险告知函》
@@ -247,71 +254,37 @@
运费信息
-
+
- + - + - + {{ i.value | currency }} - {{ i.value | currency }}(费率:{{ currentRate | number: '0.2-4' }}%) + {{ i.value | currency }}(费率:{{ currentRate | number: + '0.2-4' }}%) {{ i.value | currency }} -
-
-
- +
+
+
-
+
 天内支付运费
-
diff --git a/src/app/routes/supply-management/components/release-publish/release-publish.component.ts b/src/app/routes/supply-management/components/release-publish/release-publish.component.ts index 312a5e7d..0f607efa 100644 --- a/src/app/routes/supply-management/components/release-publish/release-publish.component.ts +++ b/src/app/routes/supply-management/components/release-publish/release-publish.component.ts @@ -436,14 +436,13 @@ export class SupplyManagementReleasePublishComponent implements OnInit { map((res: any) => { return [...res]; }) - ); + ) }, change: (tag: any, org: any) => { - if (tag === '3') { + if(tag === '3'){ this.sf5.setValue('/insurancePremium', null); this.sf5.setValue('/insuranceRate', null); - } else { - console.log(tag); + }else { this.getInsurersPrice(tag); } } @@ -453,29 +452,23 @@ export class SupplyManagementReleasePublishComponent implements OnInit { type1: { type: 'string', title: '', - enum: ['货源曝光率 +10', '车源匹配率 +10'], - readOnly: true, ui: { - widget: 'checkbox', + widget: 'custom', visibleIf: { insuranceType: (value: string) => value === '0' } - } as SFCheckboxWidgetSchema, - default: ['货源曝光率 +10', '车源匹配率 +10'] + } , }, type2: { type: 'string', title: '', - enum: ['货源曝光率 +20', '车源匹配率 +20'], - readOnly: true, ui: { - widget: 'checkbox', + widget: 'custom', visibleIf: { insuranceType: (value: string) => value === '1' } - } as SFCheckboxWidgetSchema, - default: ['货源曝光率 +20', '车源匹配率 +20'] + } }, insurancePremium: { type: 'string', title: '服务包费用', - readOnly: true, + readOnly:true, ui: { visibleIf: { insuranceType: (value: string) => value !== '3' } } @@ -502,9 +495,9 @@ export class SupplyManagementReleasePublishComponent implements OnInit { widget: 'custom', visibleIf: { insuranceType: (value: string) => value === '1' } } - } + }, }, - required: ['insurancePremium'] + required: [ 'insurancePremium'] }; this.ui5 = { '*': { @@ -962,6 +955,8 @@ export class SupplyManagementReleasePublishComponent implements OnInit { ...this.sf6.value, expenseDTOList: expenseList, paymentDays: this.sf7.value.paymentDays, + subtotal :this.sf7.value.subtotal, + total:this.sf7.value.total, estimatedKilometers: this.totalDistance, estimatedTravelTime: this.totalTime, insurancePackagedGoods: this.sf4.value.insurancePackagedGoods, @@ -1192,7 +1187,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit { getInsurersPrice(insuranceType = this.sf5.value?.insuranceType) { console.log(insuranceType); console.log(this.totalDistance); - if (insuranceType !== '3' && this.sf4.value?.goodsValue >= 50000 && this.totalDistance > 0) { + if (insuranceType !== '3' && this.totalDistance > 0) { const params = { insuranceType, goodsValue: this.sf4.value.goodsValue, @@ -1209,4 +1204,14 @@ export class SupplyManagementReleasePublishComponent implements OnInit { }); } } + // 运费信息价格变更 + priceChange(event:any, i:any){ + i.setValue(event); + if(event>=99999){ + this.modalService.warning({ + nzTitle: '可输入的最大金额为99999元', + }); + } + this.payChange() + } } diff --git a/src/app/routes/supply-management/components/vehicle-detail/vehicle-detail.component.html b/src/app/routes/supply-management/components/vehicle-detail/vehicle-detail.component.html index b3aeafc6..b192689d 100644 --- a/src/app/routes/supply-management/components/vehicle-detail/vehicle-detail.component.html +++ b/src/app/routes/supply-management/components/vehicle-detail/vehicle-detail.component.html @@ -159,10 +159,10 @@ {{ i?.insuranceTypeLabel}} - + {{i?.goodsValue !==null?(i?.goodsValue|currency)+'元':'-'}} - + {{i?.insurancePremium!==null?(i?.insurancePremium |currency)+'元':'-'}} diff --git a/src/app/routes/tax-management/components/individual-collect/individual-collect.component.html b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.html new file mode 100644 index 00000000..f942e824 --- /dev/null +++ b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.html @@ -0,0 +1,80 @@ + + + + + +
+
+ +
+
+ + + + +
+
+
+ + + + + + + + {{ item?.billStatusLabel }} + {{ item?.billStatusLabel }} + 异常 + + + + {{ item?.billStatusLabel }} + {{ item?.billStatusLabel }} + + +
{{ item?.amount | currency: ' ' }}
+
+
+
+ +
+
+ 已选择 + {{ selectedRows.length }} 条数据 +
+ + + +
+
+ diff --git a/src/app/routes/tax-management/components/individual-collect/individual-collect.component.less b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.less new file mode 100644 index 00000000..43a47df4 --- /dev/null +++ b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.less @@ -0,0 +1,5 @@ +:host { + .text-black { + color: #000; + } +} diff --git a/src/app/routes/tax-management/components/individual-collect/individual-collect.component.spec.ts b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.spec.ts new file mode 100644 index 00000000..1c0d6328 --- /dev/null +++ b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.spec.ts @@ -0,0 +1,34 @@ +/* + * @Description : + * @Version : 1.0 + * @Author : Shiming + * @Date : 2022-03-30 14:45:52 + * @LastEditors : Shiming + * @LastEditTime : 2022-03-30 15:33:06 + * @FilePath : \\tms-obc-web\\src\\app\\routes\\tax-management\\components\\individual-income\\individual-income.component.spec.ts + * Copyright (C) 2022 huzhenhong. All rights reserved. + */ +import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing'; +import { TaxManagementIndividualCollectComponent } from './individual-collect.component'; + +describe('TaxManagementIndividualCollectComponent', () => { + let component: TaxManagementIndividualCollectComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ TaxManagementIndividualCollectComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TaxManagementIndividualCollectComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/routes/tax-management/components/individual-collect/individual-collect.component.ts b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.ts new file mode 100644 index 00000000..d794103e --- /dev/null +++ b/src/app/routes/tax-management/components/individual-collect/individual-collect.component.ts @@ -0,0 +1,358 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { STColumn, STComponent, STData } from '@delon/abc/st'; +import { SFComponent, SFDateWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form'; +import { ShipperBaseService } from '@shared'; +import { NzModalService } from 'ng-zorro-antd/modal'; +import { of } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { TaxManagementService } from '../../services/tax-management.service'; +// import { DatatableReportingUploadSettingComponent } from '../upload-setting/upload-setting.component'; +// import { DatatableReportingVerifyResultComponent } from '../verify-result/verify-result.component'; + +@Component({ + selector: 'app-tax-management-individual-collect', + templateUrl: './individual-collect.component.html', + styleUrls: ['./individual-collect.component.less'] +}) +export class TaxManagementIndividualCollectComponent implements OnInit { + _$expand = false; + ui!: SFUISchema; + schema!: SFSchema; + columns!: STColumn[]; + @ViewChild('st', { static: false }) st!: STComponent; + @ViewChild('sf', { static: false }) sf!: SFComponent; + tabType!: string; + tabs: any[] = [ + { name: '待申报', value: '1' }, + { name: '待审核', value: '2' }, + { name: '已通过', value: '3' }, + { name: '不通过', value: '4' }, + { name: '全部', value: '' } + ]; + selectedIndex = ''; //选择的项目 + serviceTel = ''; + constructor( + public service: TaxManagementService, + private router: Router, + private ar: ActivatedRoute, + public shipperservice: ShipperBaseService, + private modal: NzModalService, + public shipperSrv: ShipperBaseService + ) {} + + /** + * 查询字段个数 + */ + get queryFieldCount(): number { + return Object.keys(this.schema?.properties || {}).length; + } + + /** + * 查询参数 + */ + get reqParams() { + const params = Object.assign({}, this.sf?.value || {}, { + representationsStatus: this.selectedIndex + }); + delete params._$expand; + return { ...params }; + } + + /** + * 选中行 + */ + get selectedRows() { + return this.st?.list.filter((item: any) => item.checked) || []; + } + + /** + * 伸缩查询条件 + */ + expandToggle() { + this._$expand = !this._$expand; + this.sf?.setValue('/_$expand', this._$expand); + } + + /** + * 重置表单 + */ + resetSF() { + this.sf.reset(); + this._$expand = false; + } + /** + * 程序初始化入口 + */ + ngOnInit() { + this.initSF(); + this.initST(); + } + + /** + * 初始化查询表单 + */ + initSF() { + this.schema = { + properties: { + _$expand: { type: 'boolean', ui: { hidden: true } }, + billCode: { title: '申报状态', type: 'string', ui: { placeholder: '请输入' } }, + resourceCode: { + type: 'string', + title: '申报结果', + ui: { + placeholder: '请输入' + } + }, + serviceType3: { + title: '是否逾期', + type: 'string', + ui: { + placeholder: '请选择', + widget: 'dict-select', + params: { dictKey: 'service:type' }, + containsAllLabel: true, + visibleIf: { + _$expand: (value: boolean) => value + } + } + }, + createTime: { + title: '税款所属期', + type: 'string', + ui: { + widget: 'sl-from-to', + type: 'date', + format: 'yyyy-MM-dd', + visibleIf: { + _$expand: (value: boolean) => value + } + } as SFDateWidgetSchema + }, + createTime3: { + title: '申报日期', + type: 'string', + ui: { + widget: 'sl-from-to', + type: 'date', + format: 'yyyy-MM-dd', + visibleIf: { + _$expand: (value: boolean) => value + } + } as SFDateWidgetSchema + }, + enterpriseInfoId: { + type: 'string', + title: '网络货运人', + ui: { + widget: 'select', + placeholder: '请选择', + allowClear: true, + visibleIf: { + _$expand: (value: boolean) => value + }, + asyncData: () => this.shipperservice.getNetworkFreightForwarder() + } + } + } + }; + this.ui = { + '*': { spanLabelFixed: 120, grid: { span: 8, gutter: 4 }, enter: () => this.search() }, + $time: { grid: { span: 24 } } + }; + } + + /** + * 初始化数据列表 + */ + initST() { + this.columns = [ + { title: '', type: 'checkbox', className: 'text-center', width: '60px' }, + { title: '申报状态', render: 'orderStatus', className: 'text-center', width: '120px' }, + { title: '是否逾期', render: 'localValid', className: 'text-center', width: '120px' }, + { + title: '税款所属期起', + render: 'billComplianceVOS', + className: 'text-center', + width: '150px' + }, + { title: '税款所属期止', render: 'freightDetails', className: 'text-center', width: '150px' }, + { + title: '纳税人名称', + render: 'serviceType', + className: 'text-center', + width: '180px' + }, + { title: '纳税人识别号', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '税率', render: 'transportInfo', className: 'text-center', width: '200px' }, + { title: '申报人数', render: 'payeeName', className: 'text-center', width: '150px' }, + { title: '应税收入', render: 'payeeName', className: 'text-center', width: '150px' }, + { title: '应纳税额', render: 'transportInfo', className: 'text-center', width: '180px' }, + { title: '累计已缴纳税额', render: 'payeeName', className: 'text-center', width: '150px' }, + { title: '本期应补退税额', render: 'transportInfo', className: 'text-center', width: '200px' }, + { title: '申报日期', render: 'payeeName', className: 'text-center', width: '150px' }, + ]; + } + + /** + *撤销 + * @param record 记录实例 + */ + recall() { + if (this.selectedRows.length === 0) { + this.openWainingModal('请选择需要撤回的数据'); + return; + } + this.modal.confirm({ + nzTitle: '撤回提示', + nzContent: ' 撤回后可以重新上传,重新上传会覆盖已上传数据,确定要撤回?', + nzOkText: '确定', + nzCancelText: '取消', + nzOnOk: () => { + this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + if (res) { + this.service.msgSrv.success('撤销成功'); + this.search(); + } + }); + } + }); + } + /** + *撤销 + * @param record 记录实例 + */ + unnormal(value: any) { + this.modal.confirm({ + nzTitle: '税务审核结果', + nzContent: '订单结算时间所在月份与申报月份不一致', + nzOkText: '确定', + nzCancelText: '', + nzOnOk: () => { + this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + if (res) { + this.service.msgSrv.success('撤销成功'); + this.search(); + } + }); + } + }); + } + + selectChange(item: any) { + this.selectedIndex = item?.representationsStatus || ''; + setTimeout(() => { + this.st.load(1); + }); + } + + /** + * 查看当行数据 + */ + view(record: STData) { + // this.router.navigate(['../view', record.uuid], { relativeTo: this.ar }); + this.router.navigate(['../detail'], { + queryParams: { + id: record.id + }, + relativeTo: this.ar + }); + } + + // appeal(item: any) { + // const modalRef = this.modal.create({ + // nzTitle: '申诉', + // nzWidth: '40%', + // nzContent: CtcAppealComponent, + // nzComponentParams: { + // i: item, + // status: 'add' + // }, + // nzFooter: null + // }); + // modalRef.afterClose.subscribe(res => { + // if (res) { + // this.search({ representationsStatus: '' }); + // } + // }) + // } + + /** + * 申报 + */ + upload() { + if (this.selectedRows.length === 0) { + this.openWainingModal('请选择需要上传的数据'); + return; + } + // this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + // if (res) { + // this.service.msgSrv.success('申报成功'); + // this.search(); + // } + // }) + } + + /** + * + * @param params 更新数据 + */ + uploadSetting() { + if (this.selectedRows.length === 0) { + this.openWainingModal('请选择需要上传的数据'); + return; + } + // this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + // if (res) { + // this.service.msgSrv.success('更新成功'); + // this.search(); + // } + // }) + } + + /** + * 查看校验结果 + */ + viewResult(item: any) { + // const modalRef = this.modal.create({ + // nzTitle: '本地校验结果', + // nzWidth: 1200, + // nzContent: TaxManagementOrderVerifyResultComponent, + // nzComponentParams: { + // record: item + // }, + // nzFooter: null + // }); + // modalRef.afterClose.subscribe(res => { + // }) + } + + /** + * 查看监管审核结果 + */ + viewAuditResult(record: any) { + if (record?.billStatus !== '2') { + return; + } + this.openWainingModal('监管审核结果', record?.result); + } + + search() { + this.st.load(1); + } + + /** + * 异步导出 + */ + export() { + this.service.exportStart(this.sf?.value, this.service.$api_async_export_order_reporting_list); + } + + openWainingModal(content: string, title = '提示') { + this.modal.warning({ + nzMask: false, + nzTitle: title, + nzContent: content + }); + } +} diff --git a/src/app/routes/tax-management/components/individual-declare/individual-declare.component.html b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.html new file mode 100644 index 00000000..0a653b64 --- /dev/null +++ b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.html @@ -0,0 +1,91 @@ + + + + + +
+
+ +
+
+ + + + +
+
+
+ + + + + + + + {{ item?.billStatusLabel }} + {{ item?.billStatusLabel }} + 异常 + + + + {{ item?.billStatusLabel }} + {{ item?.billStatusLabel }} + + +
{{ item?.amount | currency: ' ' }}
+
+
+
+ +
+
+ 已选择 + {{ selectedRows.length }} 条数据 +
+ + + + +
+
+ + + +
司机姓名:张三/13812345678
+
是否确认要将该司机的起征点同步调整为超过15万?
+
+ + + + +
diff --git a/src/app/routes/tax-management/components/individual-declare/individual-declare.component.less b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.less new file mode 100644 index 00000000..43a47df4 --- /dev/null +++ b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.less @@ -0,0 +1,5 @@ +:host { + .text-black { + color: #000; + } +} diff --git a/src/app/routes/tax-management/components/individual-declare/individual-declare.component.spec.ts b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.spec.ts new file mode 100644 index 00000000..23f9fc25 --- /dev/null +++ b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.spec.ts @@ -0,0 +1,34 @@ +/* + * @Description : + * @Version : 1.0 + * @Author : Shiming + * @Date : 2022-03-30 14:45:52 + * @LastEditors : Shiming + * @LastEditTime : 2022-03-31 10:36:54 + * @FilePath : \\tms-obc-web\\src\\app\\routes\\tax-management\\components\\individual-declare\\individual-declare.component.spec.ts + * Copyright (C) 2022 huzhenhong. All rights reserved. + */ +import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing'; +import { TaxManagementIndividualDeclareComponent } from './individual-declare.component'; + +describe('TaxManagementIndividualDeclareComponent', () => { + let component: TaxManagementIndividualDeclareComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ TaxManagementIndividualDeclareComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TaxManagementIndividualDeclareComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/routes/tax-management/components/individual-declare/individual-declare.component.ts b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.ts new file mode 100644 index 00000000..aabc62f5 --- /dev/null +++ b/src/app/routes/tax-management/components/individual-declare/individual-declare.component.ts @@ -0,0 +1,431 @@ +import { Component, OnInit, ViewChild } from '@angular/core'; +import { ActivatedRoute, Router } from '@angular/router'; +import { STColumn, STComponent, STData } from '@delon/abc/st'; +import { SFComponent, SFDateWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form'; +import { ShipperBaseService } from '@shared'; +import { NzModalService } from 'ng-zorro-antd/modal'; +import { of } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { TaxManagementService } from '../../services/tax-management.service'; +// import { DatatableReportingUploadSettingComponent } from '../upload-setting/upload-setting.component'; +// import { DatatableReportingVerifyResultComponent } from '../verify-result/verify-result.component'; + +@Component({ + selector: 'app-tax-management-individual-declare', + templateUrl: './individual-declare.component.html', + styleUrls: ['./individual-declare.component.less'] +}) +export class TaxManagementIndividualDeclareComponent implements OnInit { + _$expand = false; + ui!: SFUISchema; + schema!: SFSchema; + columns!: STColumn[]; + @ViewChild('st', { static: false }) st!: STComponent; + @ViewChild('sf', { static: false }) sf!: SFComponent; + tabType!: string; + tabs: any[] = [ + { name: '待申报', value: '1' }, + { name: '待审核', value: '2' }, + { name: '已通过', value: '3' }, + { name: '不通过', value: '4' }, + { name: '全部', value: '' } + ]; + selectedIndex = ''; //选择的项目 + serviceTel = ''; + isVisible : boolean = false + constructor( + public service: TaxManagementService, + private router: Router, + private ar: ActivatedRoute, + public shipperservice: ShipperBaseService, + private modal: NzModalService, + public shipperSrv: ShipperBaseService + ) {} + + /** + * 查询字段个数 + */ + get queryFieldCount(): number { + return Object.keys(this.schema?.properties || {}).length; + } + + /** + * 查询参数 + */ + get reqParams() { + const params = Object.assign({}, this.sf?.value || {}, { + representationsStatus: this.selectedIndex + }); + delete params._$expand; + return { ...params }; + } + + /** + * 选中行 + */ + get selectedRows() { + return this.st?.list.filter((item: any) => item.checked) || []; + } + + /** + * 伸缩查询条件 + */ + expandToggle() { + this._$expand = !this._$expand; + this.sf?.setValue('/_$expand', this._$expand); + } + + /** + * 重置表单 + */ + resetSF() { + this.sf.reset(); + this._$expand = false; + } + /** + * 程序初始化入口 + */ + ngOnInit() { + this.initSF(); + this.initST(); + const object1 : any = {}; + const object2 : any = {}; + Object.defineProperty(object1, 'name',{ writable: false ,value: 'wang'}); + Object.defineProperty(object2, 'xxoo',{ writable: false ,value: 'wang'}); + console.log(object1); + console.log(object1.name); + console.log(object2); + console.log(object2.xxoo); + object1.name = 'ming' + object2.xxoo = 'ming' + console.log(object1); + console.log(object2); + } + + /** + * 初始化查询表单 + */ + initSF() { + this.schema = { + properties: { + _$expand: { type: 'boolean', ui: { hidden: true } }, + billCode: { title: '司机姓名', type: 'string', ui: { placeholder: '请输入' } }, + resourceCode: { + type: 'string', + title: '联系电话', + ui: { + placeholder: '请输入' + } + }, + driverName: { + title: '证件号码', + type: 'string', + ui: { + placeholder: '请输入证件号码' + } + }, + serviceType2: { + title: '申报状态', + type: 'string', + ui: { + placeholder: '请选择', + widget: 'dict-select', + params: { dictKey: 'service:type' }, + containsAllLabel: true, + visibleIf: { + _$expand: (value: boolean) => value + } + } + }, + serviceType3: { + title: '申报结果', + type: 'string', + ui: { + placeholder: '请选择', + widget: 'dict-select', + params: { dictKey: 'service:type' }, + containsAllLabel: true, + visibleIf: { + _$expand: (value: boolean) => value + } + } + }, + serviceType1: { + title: '是否逾期', + type: 'string', + ui: { + placeholder: '请选择', + widget: 'dict-select', + params: { dictKey: 'service:type' }, + containsAllLabel: true, + visibleIf: { + _$expand: (value: boolean) => value + } + } + }, + createTime: { + title: '税款所属期', + type: 'string', + ui: { + widget: 'sl-from-to', + type: 'date', + format: 'yyyy-MM-dd', + visibleIf: { + _$expand: (value: boolean) => value + } + } as SFDateWidgetSchema + }, + createTime3: { + title: '申报日期', + type: 'string', + ui: { + widget: 'sl-from-to', + type: 'date', + format: 'yyyy-MM-dd', + visibleIf: { + _$expand: (value: boolean) => value + } + } as SFDateWidgetSchema + }, + enterpriseInfoId: { + type: 'string', + title: '网络货运人', + ui: { + widget: 'select', + placeholder: '请选择', + allowClear: true, + visibleIf: { + _$expand: (value: boolean) => value + }, + asyncData: () => this.shipperservice.getNetworkFreightForwarder() + } + } + } + }; + this.ui = { + '*': { spanLabelFixed: 120, grid: { span: 8, gutter: 4 }, enter: () => this.search() }, + $time: { grid: { span: 24 } } + }; + } + + /** + * 初始化数据列表 + */ + initST() { + this.columns = [ + { title: '', type: 'checkbox', className: 'text-center', width: '60px' }, + { title: '申报状态', render: 'orderStatus', className: 'text-center', width: '120px' }, + { title: '是否逾期', render: 'localValid', className: 'text-center', width: '120px' }, + { + title: '税款所属期起', + render: 'billComplianceVOS', + className: 'text-center', + width: '150px' + }, + { title: '税款所属期止', render: 'freightDetails', className: 'text-center', width: '150px' }, + { + title: '纳税人名称', + render: 'serviceType', + className: 'text-center', + width: '180px' + }, + { title: '纳税人识别号', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '姓名', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '证件类型', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '证件号码', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '联系电话', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '国家(地区)', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '所属行业', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '征收项目', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '征收品目', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '计税依据', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '税率', index: 'loadingPlace', render: 'loadingPlace', className: 'text-center', width: '200px' }, + { title: '应纳税额', render: 'transportInfo', className: 'text-center', width: '180px' }, + { title: '减免税额', render: 'transportInfo', className: 'text-center', width: '180px' }, + { title: '已缴纳税额', render: 'transportInfo', className: 'text-center', width: '180px' }, + { title: '应代征税额', render: 'transportInfo', className: 'text-center', width: '180px' }, + { title: '已代征税额', render: 'payeeName', className: 'text-center', width: '150px' }, + { title: '申报日期', render: 'payeeName', className: 'text-center', width: '150px' }, + ]; + } + + /** + *撤销 + * @param record 记录实例 + */ + recall() { + if (this.selectedRows.length === 0) { + this.openWainingModal('请选择需要撤回的数据'); + return; + } + this.modal.confirm({ + nzTitle: '撤回提示', + nzContent: ' 撤回后可以重新上传,重新上传会覆盖已上传数据,确定要撤回?', + nzOkText: '确定', + nzCancelText: '取消', + nzOnOk: () => { + this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + if (res) { + this.service.msgSrv.success('撤销成功'); + this.search(); + } + }); + } + }); + } + /** + *撤销 + * @param record 记录实例 + */ + resetData() { + if (this.selectedRows.length === 0) { + this.openWainingModal('请选择需要更新的数据!'); + return; + } + this.isVisible = true + + } + /** + *撤销 + * @param record 记录实例 + */ + unnormal(value: any) { + this.modal.confirm({ + nzTitle: '税务审核结果', + nzContent: '订单结算时间所在月份与申报月份不一致', + nzOkText: '确定', + nzCancelText: '', + nzOnOk: () => { + this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + if (res) { + this.service.msgSrv.success('撤销成功'); + this.search(); + } + }); + } + }); + } + + selectChange(item: any) { + this.selectedIndex = item?.representationsStatus || ''; + setTimeout(() => { + this.st.load(1); + }); + } + + /** + * 查看当行数据 + */ + view(record: STData) { + // this.router.navigate(['../view', record.uuid], { relativeTo: this.ar }); + this.router.navigate(['../detail'], { + queryParams: { + id: record.id + }, + relativeTo: this.ar + }); + } + + // appeal(item: any) { + // const modalRef = this.modal.create({ + // nzTitle: '申诉', + // nzWidth: '40%', + // nzContent: CtcAppealComponent, + // nzComponentParams: { + // i: item, + // status: 'add' + // }, + // nzFooter: null + // }); + // modalRef.afterClose.subscribe(res => { + // if (res) { + // this.search({ representationsStatus: '' }); + // } + // }) + // } + + /** + * 申报 + */ + upload() { + if (this.selectedRows.length === 0) { + this.openWainingModal('请选择需要上传的数据'); + return; + } + // this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + // if (res) { + // this.service.msgSrv.success('申报成功'); + // this.search(); + // } + // }) + } + + /** + * + * @param params 更新数据 + */ + uploadSetting() { + if (this.selectedRows.length === 0) { + this.openWainingModal('请选择需要上传的数据'); + return; + } + // this.service.request(this.service.$api_recall_reporting, { rows: this.selectedRows }).subscribe((res: any) => { + // if (res) { + // this.service.msgSrv.success('更新成功'); + // this.search(); + // } + // }) + } + + /** + * 查看校验结果 + */ + viewResult(item: any) { + // const modalRef = this.modal.create({ + // nzTitle: '本地校验结果', + // nzWidth: 1200, + // nzContent: TaxManagementOrderVerifyResultComponent, + // nzComponentParams: { + // record: item + // }, + // nzFooter: null + // }); + // modalRef.afterClose.subscribe(res => { + // }) + } + + /** + * 查看监管审核结果 + */ + viewAuditResult(record: any) { + if (record?.billStatus !== '2') { + return; + } + this.openWainingModal('监管审核结果', record?.result); + } + + search() { + this.st.load(1); + } + + /** + * 异步导出 + */ + export() { + this.service.exportStart(this.sf?.value, this.service.$api_async_export_order_reporting_list); + } + + openWainingModal(content: string, title = '提示') { + this.modal.warning({ + nzMask: false, + nzTitle: title, + nzContent: content + }); + } + handleOK() { + + } + handleCancel() { + this.isVisible = false; + } +} diff --git a/src/app/routes/tax-management/components/individual-income/individual-income.component.html b/src/app/routes/tax-management/components/individual-income/individual-income.component.html index de71d3e2..8f9d0783 100644 --- a/src/app/routes/tax-management/components/individual-income/individual-income.component.html +++ b/src/app/routes/tax-management/components/individual-income/individual-income.component.html @@ -1,5 +1,5 @@ - + [page]="{ show: true, showSize: true, pageSizes: [10, 20, 50, 100] }" [loading]="false"> {{ item?.billStatusLabel }} {{ item?.billStatusLabel }} @@ -79,7 +65,8 @@
- +
司机姓名:张三/13812345678
是否确认要将该司机的起征点同步调整为超过15万?
diff --git a/src/app/routes/tax-management/components/order-reporting/order-reporting.component.html b/src/app/routes/tax-management/components/order-reporting/order-reporting.component.html index 95304139..5ce02b5a 100644 --- a/src/app/routes/tax-management/components/order-reporting/order-reporting.component.html +++ b/src/app/routes/tax-management/components/order-reporting/order-reporting.component.html @@ -35,7 +35,7 @@ - diff --git a/src/app/routes/tax-management/components/order-reporting/verify-result/verify-result.component.html b/src/app/routes/tax-management/components/order-reporting/verify-result/verify-result.component.html index 8d3df409..91c1d871 100644 --- a/src/app/routes/tax-management/components/order-reporting/verify-result/verify-result.component.html +++ b/src/app/routes/tax-management/components/order-reporting/verify-result/verify-result.component.html @@ -5,7 +5,7 @@
- diff --git a/src/app/routes/tax-management/services/tax-management.service.ts b/src/app/routes/tax-management/services/tax-management.service.ts index 07033423..ed893c38 100644 --- a/src/app/routes/tax-management/services/tax-management.service.ts +++ b/src/app/routes/tax-management/services/tax-management.service.ts @@ -26,7 +26,7 @@ export class TaxManagementService extends BaseService { // 查询运营报表 $api_listOperationalReportPage = `/api/sdc/report/listOperationalReportPage`; - $api_get_order_reporting_page = `/api/sdc/billOperate/listWholePage`; // 订单上报列表 + $api_get_individual_income_page = `/api/sdc/billOperate/listWholePage`; // 订单上报列表 $api_recall_reporting = ``; // 撤回 $api_async_export_order_reporting_list = ``; // 导出订单上报 $api_get_upload_setting = ``; // 修改上传设置 diff --git a/src/app/routes/tax-management/tax-management-routing.module.ts b/src/app/routes/tax-management/tax-management-routing.module.ts index f3a1c496..84b09d08 100644 --- a/src/app/routes/tax-management/tax-management-routing.module.ts +++ b/src/app/routes/tax-management/tax-management-routing.module.ts @@ -4,12 +4,14 @@ * @Author : Shiming * @Date : 2022-03-30 13:58:28 * @LastEditors : Shiming - * @LastEditTime : 2022-03-30 15:33:48 + * @LastEditTime : 2022-03-31 10:37:24 * @FilePath : \\tms-obc-web\\src\\app\\routes\\tax-management\\tax-management-routing.module.ts * Copyright (C) 2022 huzhenhong. All rights reserved. */ import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; +import { TaxManagementIndividualCollectComponent } from './components/individual-collect/individual-collect.component'; +import { TaxManagementIndividualDeclareComponent } from './components/individual-declare/individual-declare.component'; import { TaxManagementIndividualIncomeComponent } from './components/individual-income/individual-income.component'; import { TaxManagementOrderReportingComponent } from './components/order-reporting/order-reporting.component'; @@ -17,6 +19,8 @@ import { TaxManagementOrderReportingComponent } from './components/order-reporti const routes: Routes = [ { path: 'orderReport', component: TaxManagementOrderReportingComponent }, { path: 'income', component: TaxManagementIndividualIncomeComponent }, + { path: 'collect', component: TaxManagementIndividualCollectComponent }, + { path: 'declare', component: TaxManagementIndividualDeclareComponent }, ]; diff --git a/src/app/routes/tax-management/taxmanagement.module.ts b/src/app/routes/tax-management/taxmanagement.module.ts index 76dc61c0..92dbda10 100644 --- a/src/app/routes/tax-management/taxmanagement.module.ts +++ b/src/app/routes/tax-management/taxmanagement.module.ts @@ -10,6 +10,8 @@ */ import { NgModule, Type } from '@angular/core'; import { SharedModule, SHARED_G2_MODULES } from '@shared'; +import { TaxManagementIndividualCollectComponent } from './components/individual-collect/individual-collect.component'; +import { TaxManagementIndividualDeclareComponent } from './components/individual-declare/individual-declare.component'; import { TaxManagementIndividualIncomeComponent } from './components/individual-income/individual-income.component'; import { TaxManagementOrderReportingComponent } from './components/order-reporting/order-reporting.component'; import { TaxManagementUploadSettingComponent } from './components/order-reporting/upload-setting/upload-setting.component'; @@ -21,7 +23,9 @@ const COMPONENTS: Type[] = [ TaxManagementOrderReportingComponent, TaxManagementOrderVerifyResultComponent, TaxManagementUploadSettingComponent, - TaxManagementIndividualIncomeComponent + TaxManagementIndividualIncomeComponent, + TaxManagementIndividualCollectComponent, + TaxManagementIndividualDeclareComponent ] diff --git a/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.ts b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.ts index 5911e06b..c9f454ad 100644 --- a/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.ts +++ b/src/app/routes/ticket-management/components/cancellation-invoice/cancellation-invoice.component.ts @@ -339,6 +339,7 @@ export class CancellationInvoiceComponent implements OnInit { click: item => this.router.navigate(['/ticket/invoice-requested/detail/' + item?.vatappHId]) }, { title: '申请时间', index: 'createTime', type: 'date', width: 150 }, + { title: '发票类型', index: 'vatapptypeLabel', width: 150 }, { title: '网络货运人', index: 'ltdName', width: 160 }, { title: '购买人', index: 'artoname', width: 160 }, { title: '订单数', index: 'ordlines', width: 90, className: 'text-right' }, diff --git a/src/app/routes/ticket-management/components/input-invoice/input-invoice.component.ts b/src/app/routes/ticket-management/components/input-invoice/input-invoice.component.ts index d8ff45cb..afc5e4d0 100644 --- a/src/app/routes/ticket-management/components/input-invoice/input-invoice.component.ts +++ b/src/app/routes/ticket-management/components/input-invoice/input-invoice.component.ts @@ -123,7 +123,7 @@ export class InputInvoiceComponent implements OnInit { title: '发票类型', ui: { widget: 'dict-select', - params: { dictKey: 'refund:apply:status' }, + params: { dictKey: 'DictConstants.INVOICE_TYPE' }, placeholder: '请选择', visibleIf: { expand: (value: boolean) => value @@ -154,14 +154,19 @@ export class InputInvoiceComponent implements OnInit { sts: { type: 'string', title: '收票状态', + enum: [ + { value: '', label: '全部' }, + { value: 1, label: '是' }, + { value: 0, label: '否' } + ], ui: { - widget: 'dict-select', - params: { dictKey: 'refund:apply:status' }, + widget: 'select', placeholder: '请选择', visibleIf: { expand: (value: boolean) => value } - } + }, + default: '' }, invdate: { type: 'string', diff --git a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.html b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.html index 2d05f3d4..b4501159 100644 --- a/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.html +++ b/src/app/routes/ticket-management/components/invoice-requested/invoice-requested-detail/invoice-requested-detail.component.html @@ -25,7 +25,7 @@ {{headerInfo?.vatinvHNum}} - {{headerInfo?.reciname}} + {{headerInfo?.reciname}}/{{headerInfo?.recitel}} {{headerInfo?.provinceName}}{{headerInfo?.cityName}}{{headerInfo?.areaName}}{{headerInfo?.reciaddr}} diff --git a/src/assets/mocks/menu-data.json b/src/assets/mocks/menu-data.json index a1e082d1..1aee4bad 100644 --- a/src/assets/mocks/menu-data.json +++ b/src/assets/mocks/menu-data.json @@ -685,6 +685,14 @@ { "text": "个税明细", "link": "/tax/income" + }, + { + "text": "个税汇总", + "link": "/tax/collect" + }, + { + "text": "税务申报", + "link": "/tax/declare" } ] }