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 index c0299bc2..13e96d9f 100644 --- 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 @@ -26,15 +26,8 @@ - + {{ item?.billStatusLabel }} {{ item?.billStatusLabel }} @@ -56,13 +49,11 @@ 已选择 {{ selectedRows.length }} 条数据 - - + + + 更多
  • 申报
  • @@ -74,7 +65,8 @@ - +
    司机姓名:张三/13812345678
    是否确认要将该司机的起征点同步调整为超过15万?
    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 index a34121fb..3ce7ae63 100644 --- 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 @@ -1,6 +1,6 @@ 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 { SFDateWidgetSchema } from '@delon/form'; import { SearchDrawerService } from '@shared'; import { NzModalService } from 'ng-zorro-antd/modal'; @@ -26,6 +26,9 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent selectedIndex = ''; //选择的项目 serviceTel = ''; isVisible: boolean = false; + checkedList: any[] = []; + + // selectedRows:any[] =[]; constructor( public service: TaxManagementService, private router: Router, @@ -63,18 +66,6 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent 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); } /** @@ -368,12 +359,13 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent 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(); - // } - // }) + const ids = this.selectedRows.map(item => item?.id); + this.service.request(this.service.$api_declare_tax, ids).subscribe((res: any) => { + if (res) { + this.service.msgSrv.success('申报成功'); + this.search(); + } + }) } /** @@ -383,9 +375,9 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent resetData() { let params: any; if (this.selectedRows.length === 0) { - params =[] - } else{ - params =[] + params = [] + } else { + params = [] this.selectedRows.forEach(item => { params.push(item.id); }); @@ -431,7 +423,7 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent // 导出 exprot() { - this.service.exportStart({ ...this.reqParams, pageSize: -1 }, this.service.$api_taxDeclaration_export); + this.service.exportStart({ ...this.reqParams, pageSize: -1 }, this.service.$api_taxDeclaration_export); } openWainingModal(content: string, title = '提示') { @@ -441,8 +433,60 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent nzContent: content }); } - handleOK() {} + handleOK() { } handleCancel() { this.isVisible = false; } + + /** + * + * @param e + */ + changeST(e: STChange): void { + if (e?.type === 'checkbox') { + if (e?.checkbox!.length === 0) { + // 全选取消 + this.st.list.forEach((item, index) => { + this.st.setRow(index, { checked: false }); + }) + this.checkedList = []; + } else { + // 取消选择 + if (this.checkedList.length > e?.checkbox!.length) { + const item = this.checkedList.find(item => !item?.checked); + this.st.list?.forEach(((row, index) => { + if (row?.driverId === item?.driverId && row?.ltdId === item?.ltdId && row?.taxMonth === item?.taxMonth) { + this.st.setRow(index, { checked: false }); + this.checkedList = this.checkedList.filter(_item => _item?.id !== row?.id); + } + })) + } else { + // 全选 + const allChecked = this.st?.list.every(item => item.checked); + if (allChecked) { + this.st.list?.forEach((row, index) => { + const flag = this.checkedList.find(_item => _item.id === row?.id); + if (!flag) { + this.checkedList.push(row); + } + }) + return; + } + // 单个新增选择 + const list = e?.checkbox?.filter(item => !this.checkedList.some(_item => _item?.id === item.id)); + list?.forEach(item => { + this.st.list?.forEach((row, index) => { + if (row?.driverId === item?.driverId && row?.ltdId === item?.ltdId && row?.taxMonth === item?.taxMonth) { + this.st.setRow(index, { checked: true }); + const flag = this.checkedList.find(_item => _item.id === row?.id); + if (!flag) { + this.checkedList.push(row); + } + } + }) + }) + } + } + } + } } 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 f70df070..6e274bba 100644 --- a/src/app/routes/tax-management/services/tax-management.service.ts +++ b/src/app/routes/tax-management/services/tax-management.service.ts @@ -70,6 +70,8 @@ export class TaxManagementService extends ShipperBaseService { $api_invoiceUpload_withdraw = '/api/sdc/invoiceUploadInfo/withdraw'; // 修改起征点 $api_fixThreshold = '/api/sdc/taxIncome/fixThreshold'; + //申报 + $api_declare_tax = `/api/sdc/taxDeclaration/declare`; constructor(public injector: Injector) { super(injector); }