Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop
This commit is contained in:
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-01-18 09:51:21
|
* @Date : 2022-01-18 09:51:21
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-05-11 13:29:32
|
* @LastEditTime : 2022-05-11 19:19:55
|
||||||
* @FilePath : \\tms-obc-web\\proxy.conf.js
|
* @FilePath : \\tms-obc-web\\proxy.conf.js
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -30,7 +30,7 @@ module.exports = {
|
|||||||
// },
|
// },
|
||||||
'//api': {
|
'//api': {
|
||||||
target: {
|
target: {
|
||||||
host: 'tms-api-test.eascs.com',
|
host: 'tms-api-dev.eascs.com',
|
||||||
protocol: 'https:',
|
protocol: 'https:',
|
||||||
port: 443
|
port: 443
|
||||||
},
|
},
|
||||||
|
|||||||
@ -1,3 +1,13 @@
|
|||||||
|
<!--
|
||||||
|
* @Description :
|
||||||
|
* @Version : 1.0
|
||||||
|
* @Author : Shiming
|
||||||
|
* @Date : 2022-04-28 20:27:07
|
||||||
|
* @LastEditors : Shiming
|
||||||
|
* @LastEditTime : 2022-05-11 20:46:30
|
||||||
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\account-management\\components\\recorded-detail\\recorded-detail.component.html
|
||||||
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
|
-->
|
||||||
<page-header-wrapper [title]="'待入账明细'" [logo]="logo">
|
<page-header-wrapper [title]="'待入账明细'" [logo]="logo">
|
||||||
<ng-template #logo>
|
<ng-template #logo>
|
||||||
<button nz-button (click)="goBack()">
|
<button nz-button (click)="goBack()">
|
||||||
@ -6,29 +16,44 @@
|
|||||||
</ng-template>
|
</ng-template>
|
||||||
</page-header-wrapper>
|
</page-header-wrapper>
|
||||||
<nz-card>
|
<nz-card>
|
||||||
<sv-container layout="vertical" [noColon]="true" col="5">
|
<sv-container layout="vertical" [noColon]="true" col="6">
|
||||||
<sv [label]="labelTpl">
|
<sv label="合伙人信息">
|
||||||
<b class="text-md ">{{summaryObj?.taxno}}</b>
|
<div
|
||||||
|
><b>{{ summaryObj?.partnerName }}</b></div
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
><b>{{ summaryObj?.partnerInfo }}</b></div
|
||||||
|
>
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="返佣总额">
|
<sv label="返佣总额">
|
||||||
<span class="text-error-dark font-weight-bold">{{(summaryObj?.totalRebate?summaryObj?.totalRebate: 0 )|currency :'
|
<span class="text-error-dark font-weight-bold">{{ (summaryObj?.totalRebate ? summaryObj?.totalRebate : 0) | currency }}</span>
|
||||||
'}}</span>
|
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="已入账金额">
|
<sv label="已入账金额">
|
||||||
<span class="text-error-dark font-weight-bold">{{(summaryObj?.recordedAmount?summaryObj?.recordedAmount:0
|
<span class="text-error-dark font-weight-bold">{{ (summaryObj?.recordedAmount ? summaryObj?.recordedAmount : 0) | currency }}</span>
|
||||||
)|currency:' '}}</span>
|
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="代缴个税">
|
<sv label="已代缴个税">
|
||||||
<span class="text-error-dark font-weight-bold">{{(summaryObj?.taxPersonalSum?summaryObj?.taxPersonalSum:0
|
<span class="text-error-dark font-weight-bold">{{
|
||||||
)|currency:' '}}</span>
|
(summaryObj?.recordedTaxPersonal ? summaryObj?.recordedTaxPersonal : 0) | currency
|
||||||
|
}}</span>
|
||||||
|
</sv>
|
||||||
|
<sv label="入账中金额">
|
||||||
|
<span class="text-error-dark font-weight-bold">{{
|
||||||
|
(summaryObj?.ongoingRecordedAmount ? summaryObj?.ongoingRecordedAmount : 0) | currency
|
||||||
|
}}</span>
|
||||||
|
</sv>
|
||||||
|
<sv label="代缴中个税">
|
||||||
|
<span class="text-error-dark font-weight-bold">{{
|
||||||
|
(summaryObj?.waitRecordedTaxPersonal ? summaryObj?.waitRecordedTaxPersonal : 0) | currency
|
||||||
|
}}</span>
|
||||||
</sv>
|
</sv>
|
||||||
<sv label="待入账金额">
|
<sv label="待入账金额">
|
||||||
<span class="text-error-dark font-weight-bold">{{(summaryObj?.waitRecordedAmount?summaryObj?.waitRecordedAmount:0)
|
<span class="text-error-dark font-weight-bold">{{
|
||||||
|currency:' '}}</span>
|
(summaryObj?.waitRecordedAmount ? summaryObj?.waitRecordedAmount : 0) | currency
|
||||||
|
}}</span>
|
||||||
</sv>
|
</sv>
|
||||||
</sv-container>
|
</sv-container>
|
||||||
<ng-template #labelTpl>
|
<ng-template #labelTpl>
|
||||||
<b class="text-md" style="color: black;">{{summaryObj?.ltdName}}</b>
|
<b class="text-md" style="color: black">{{ summaryObj?.ltdName }}</b>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card>
|
<nz-card>
|
||||||
@ -36,44 +61,81 @@
|
|||||||
<sf mode="search" #sf [schema]="schema" [ui]="ui" (formSubmit)="search()" (formReset)="resetSF()"></sf>
|
<sf mode="search" #sf [schema]="schema" [ui]="ui" (formSubmit)="search()" (formReset)="resetSF()"></sf>
|
||||||
</div>
|
</div>
|
||||||
<div class="table-content">
|
<div class="table-content">
|
||||||
<st #st [data]="service.$api_get_invoice_detail_page " [columns]="columns"
|
<st
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: {pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
#st
|
||||||
|
[data]="service.$api_get_invoice_detail_page"
|
||||||
|
[columns]="columns"
|
||||||
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
|
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
|
||||||
[page]="{ show: true, showSize: true, pageSizes: [5,10, 20, 50, 100, 200, 500] }"
|
[page]="{ show: true, showSize: true, pageSizes: [5, 10, 20, 50, 100, 200, 500] }"
|
||||||
[loading]="service.http.loading" [scroll]="{x:'1200px'}">
|
[scroll]="{ x: '1200px' }"
|
||||||
<ng-template st-row="amount" let-item>
|
>
|
||||||
<div *ngIf="item.incomeType === '1'"> - {{item.amount | currency }}</div>
|
<!-- [loading]="service.http.loading" -->
|
||||||
<div *ngIf="item.incomeType === '2'"> + {{item.amount | currency }}</div>
|
|
||||||
|
<ng-template st-row="recordedAmount" let-item>
|
||||||
|
<div>{{ item.recordedAmount | currency }}</div>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="recordedTaxPersonal" let-item>
|
||||||
|
<div>{{ item.recordedTaxPersonal | currency }}</div>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="ongoingRecordedAmount" let-item>
|
||||||
|
<div>{{ item.ongoingRecordedAmount | currency }}</div>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="waitRecordedTaxPersonal" let-item>
|
||||||
|
<div>{{ item.waitRecordedTaxPersonal | currency }}</div>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="changeAmount" let-item>
|
||||||
|
<div>{{ item.changeAmount | currency }}</div>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="waitRecordedAmount" let-item>
|
||||||
|
<div>{{ item.waitRecordedAmount | currency }}</div>
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="totalRebate" let-item>
|
||||||
|
<div>{{ item.totalRebate | currency }}</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</st>
|
</st>
|
||||||
<div class="total-footer text-md" *ngIf="st?.list?.length !== 0 ">
|
|
||||||
合计 <label class="text-red-dark">{{ footerSummary?.total }}</label> 项,收入 <label
|
|
||||||
class="text-red-dark font-weight-bold">{{
|
|
||||||
footerSummary?.income | currency
|
|
||||||
}}</label>,支出 <label class="text-red-dark font-weight-bold">{{
|
|
||||||
footerSummary?.spending | currency }}</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<nz-modal [(nzVisible)]="showBillDetail" nzTitle="账户明细" [nzFooter]="null" (nzOnCancel)="handleCancel()" nzWidth="700px">
|
<nz-modal [(nzVisible)]="showBillDetail" nzTitle="账户明细" [nzFooter]="null" (nzOnCancel)="handleCancel()" nzWidth="700px">
|
||||||
<div *nzModalContent>
|
<div *nzModalContent>
|
||||||
<div class="mb-sm">
|
<div class="mb-sm">
|
||||||
<span class="mr-xxl text-sm font-weight-bold"><label>网络货运人:</label>{{detailRecord?.ltdName}}</span>
|
<span class="mr-xxl text-sm font-weight-bold"><label>网络货运人:</label>{{ detailRecord?.ltdName }}</span>
|
||||||
<span class="text-sm font-weight-bold"><label>返佣总额(元):</label>{{detailRecord?.totalRebate |currency: ' '}}</span>
|
<span class="text-sm font-weight-bold"><label>返佣总额(元):</label>{{ detailRecord?.totalRebate | currency: ' ' }}</span>
|
||||||
</div>
|
</div>
|
||||||
<st #st [data]="billDetailList " [columns]="billDetailColumns" [res]="{ reName: { list: 'data' } }"
|
<st
|
||||||
[req]="{ method: 'POST', allInBody: true, params:billDetailReqParams}" [page]="{show:false}">
|
#st
|
||||||
|
[data]="billDetailList"
|
||||||
|
[columns]="billDetailColumns"
|
||||||
|
[res]="{ reName: { list: 'data' } }"
|
||||||
|
[req]="{ method: 'POST', allInBody: true, params: billDetailReqParams }"
|
||||||
|
[page]="{ show: false }"
|
||||||
|
>
|
||||||
<ng-template st-row="month" let-item>
|
<ng-template st-row="month" let-item>
|
||||||
<div>
|
<div>
|
||||||
<span>{{item?.year }}年</span>
|
<span>{{ item?.year }}年</span>
|
||||||
<span>{{item?.month }}月</span>
|
<span>{{ item?.month }}月</span>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="profitAmountSum" let-item>
|
<ng-template st-row="profitAmountSum" let-item>
|
||||||
<div>{{item?.profitAmountSum |currency :' '}}</div>
|
<div>{{ item?.profitAmountSum | currency: ' ' }}</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|
||||||
</st>
|
</st>
|
||||||
</div>
|
</div>
|
||||||
</nz-modal>
|
</nz-modal>
|
||||||
|
<nz-modal [(nzVisible)]="changeAccount" nzTitle="账户明细" [nzFooter]="null" (nzOnCancel)="handleCancelA()" nzWidth="600px">
|
||||||
|
<div *nzModalContent>
|
||||||
|
<div style="display: flex; justify-content: center; align-items: center;font-weight: 700; font-size: 16px; padding: 10px 0;"><label>网络货运人:</label>{{ changeRecord?.ltdName }}</div>
|
||||||
|
<div style="display: flex; justify-content: center; align-items: center;font-weight: 700; font-size: 16px; padding: 10px 0;"><label>待入账金额(元):</label>{{ changeRecord?.waitRecordedAmount | currency }}</div>
|
||||||
|
<sf #sfView [schema]="schemaView" [ui]="uiView" [compact]="true" [button]="'none'">
|
||||||
|
<ng-template sf-template="smsVerifyCode" let-me let-ui="uiView" let-schema="schemaView">
|
||||||
|
<div style="display: flex;">
|
||||||
|
<div style="display: flex; justify-content: center; align-items: center;width: 30px; height: 30px; background-color: #ccc;margin: 0 10px;font-size: 14px;">+</div>
|
||||||
|
<div style="display: flex; justify-content: center; align-items: center;width: 30px; height: 30px; background-color: #ccc;margin: 0 10px;font-size: 14px;">-</div>
|
||||||
|
<nz-input-number style="width: 50%; border-radius: 4px 0 0 4px;" nzPlaceHolder="请输入金额" [(ngModel)]="demoValue" [nzMin]="1" [nzMax]="99999999" [nzStep]="1"></nz-input-number>
|
||||||
|
<span style="margin: 10px ;">元</span>
|
||||||
|
</div>
|
||||||
|
</ng-template>
|
||||||
|
</sf>
|
||||||
|
</div>
|
||||||
|
</nz-modal>
|
||||||
|
|||||||
@ -7,7 +7,7 @@ import { AccountManagemantService } from '../../services/account-managemant.serv
|
|||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-partner-account-management-recorded-detail',
|
selector: 'app-partner-account-management-recorded-detail',
|
||||||
templateUrl: './recorded-detail.component.html',
|
templateUrl: './recorded-detail.component.html'
|
||||||
})
|
})
|
||||||
export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
||||||
summaryObj: any = {
|
summaryObj: any = {
|
||||||
@ -18,14 +18,18 @@ export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
|||||||
ltdName: '',
|
ltdName: '',
|
||||||
taxno: ''
|
taxno: ''
|
||||||
};
|
};
|
||||||
|
@ViewChild('sfView', { static: false }) sfView!: SFComponent;
|
||||||
|
schemaView!: SFSchema;
|
||||||
|
uiView: SFUISchema = {};
|
||||||
|
|
||||||
footerSummary = {
|
footerSummary = {
|
||||||
total: 0,
|
total: 0,
|
||||||
income: 0,
|
income: 0,
|
||||||
spending: 0
|
spending: 0
|
||||||
}
|
};
|
||||||
|
|
||||||
detailRecord: any = {};
|
detailRecord: any = {};
|
||||||
|
changeRecord: any = {};
|
||||||
|
|
||||||
url = `/user`;
|
url = `/user`;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
@ -33,19 +37,17 @@ export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
|||||||
@ViewChild('st') private readonly st!: STComponent;
|
@ViewChild('st') private readonly st!: STComponent;
|
||||||
@ViewChild('sf') private readonly sf!: SFComponent;
|
@ViewChild('sf') private readonly sf!: SFComponent;
|
||||||
|
|
||||||
|
|
||||||
columns: STColumn[] = [];
|
columns: STColumn[] = [];
|
||||||
billDetailColumns: STColumn[] = [];
|
billDetailColumns: STColumn[] = [];
|
||||||
showBillDetail = false;
|
showBillDetail = false;
|
||||||
|
changeAccount = false;
|
||||||
billDetailList = [];
|
billDetailList = [];
|
||||||
roleId = '';
|
roleId = '';
|
||||||
|
demoValue!: number;
|
||||||
constructor(public service: AccountManagemantService, public router: Router, public ar: ActivatedRoute) {
|
constructor(public service: AccountManagemantService, public router: Router, public ar: ActivatedRoute) {
|
||||||
this.roleId = this.ar.snapshot.params.id;
|
this.roleId = this.ar.snapshot.params.id;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
get reqParams() {
|
get reqParams() {
|
||||||
return { ...this.sf?.value, partnerId: this.roleId };
|
return { ...this.sf?.value, partnerId: this.roleId };
|
||||||
}
|
}
|
||||||
@ -63,45 +65,60 @@ export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
|||||||
this.schema = {
|
this.schema = {
|
||||||
properties: {
|
properties: {
|
||||||
ltdName: {
|
ltdName: {
|
||||||
title: '网络货运人',
|
|
||||||
type: 'string',
|
type: 'string',
|
||||||
|
title: '网络货运人',
|
||||||
ui: {
|
ui: {
|
||||||
placeholder: '请输入',
|
placeholder: '请输入',
|
||||||
},
|
// allowClear: true,
|
||||||
},
|
// asyncData: () => this.service.getNetworkFreightForwarder(),
|
||||||
|
// visibleIf: {
|
||||||
|
// expand: (value: boolean) => value
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
this.ui = { '*': { spanLabelFixed: 120, grid: { span: 8, gutter: 4 } }, };
|
this.ui = { '*': { spanLabelFixed: 120, grid: { span: 8, gutter: 4 } } };
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 初始化数据列表
|
* 初始化数据列表
|
||||||
*/
|
*/
|
||||||
initST() {
|
initST() {
|
||||||
this.columns = [
|
this.columns = [
|
||||||
{ title: '网络货运人', index: 'ltdName', className: 'text-center', width: 200 },
|
{ title: '网络货运人', index: 'ltdName', className: 'text-center', width: 200 },
|
||||||
{ title: '银行类型', render: 'bankTypeLabel', className: 'text-center', width: 150 },
|
{ title: '银行类型', index: 'bankTypeName', className: 'text-center', width: 150 },
|
||||||
{ title: '虚拟账户', render: 'fictitiousAccount', className: 'text-center', width: 200 },
|
{ title: '虚拟账户', index: 'virtualAccount', className: 'text-center', width: 200 },
|
||||||
{ title: '返佣总额(元)', index: 'totalRebate', className: 'text-center', width: 180, type: 'currency' },
|
{ title: '返佣总额(元)', render: 'totalRebate', className: 'text-center', width: 180 },
|
||||||
{ title: '已入账金额(元)', index: 'recordedAmount', className: 'text-center', width: 180, type: 'currency' },
|
{ title: '已入账金额(元)', render: 'recordedAmount', className: 'text-center', width: 180 },
|
||||||
{ title: '代缴个税(元)', index: 'taxPersonalSum', className: 'text-center', width: 180, type: 'currency' },
|
{ title: '已代缴个税(元)', render: 'recordedTaxPersonal', className: 'text-center', width: 180 },
|
||||||
{ title: '待入账金额(元)', index: 'waitRecordedAmount', className: 'text-right', width: 180, type: 'currency' },
|
{ title: '入账中金额(元)', render: 'ongoingRecordedAmount', className: 'text-center', width: 180 },
|
||||||
|
{ title: '代缴中个税(元)', render: 'waitRecordedTaxPersonal', className: 'text-center', width: 180 },
|
||||||
|
{ title: '调整金额(元)', render: 'changeAmount', className: 'text-center', width: 180 },
|
||||||
|
{ title: '待入账金额(元)', render: 'waitRecordedAmount', className: 'text-right', width: 180 },
|
||||||
{
|
{
|
||||||
title: '操作', className: 'text-center', width: 300,
|
title: '操作',
|
||||||
|
className: 'text-center',
|
||||||
|
width: 150,
|
||||||
|
fixed: 'right',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '查看入账记录',
|
text: '查看入账记录',
|
||||||
acl: { ability: ['AN-RECORDED-DETAIL-viewRecord'] },
|
acl: { ability: ['AN-RECORDED-DETAIL-viewRecord'] },
|
||||||
click: (_record) => this.viewBookedRecord(_record)
|
click: _record => this.viewBookedRecord(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '查看账单明细',
|
text: '查看账单明细',
|
||||||
acl: { ability: ['AN-RECORDED-DETAIL-viewBill'] },
|
acl: { ability: ['AN-RECORDED-DETAIL-viewBill'] },
|
||||||
click: (_record) => this.viewAccountDetail(_record)
|
click: _record => this.viewAccountDetail(_record)
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
text: '调整待入账金额',
|
||||||
|
acl: { ability: [''] },
|
||||||
|
click: _record => this.changeStalyAccount(_record)
|
||||||
|
}
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -110,26 +127,60 @@ export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
|||||||
{ title: '账单月份', render: 'month', className: 'text-center', width: '40%' },
|
{ title: '账单月份', render: 'month', className: 'text-center', width: '40%' },
|
||||||
{ title: '返佣金额(元)', render: 'profitAmountSum', className: 'text-center', width: '40%' },
|
{ title: '返佣金额(元)', render: 'profitAmountSum', className: 'text-center', width: '40%' },
|
||||||
{
|
{
|
||||||
title: '操作', className: 'text-center', width: '20%', buttons: [
|
title: '操作',
|
||||||
|
className: 'text-center',
|
||||||
|
width: '20%',
|
||||||
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '订单明细',
|
text: '订单明细',
|
||||||
click: (_record) => window.open(location.origin + `#/partner/rebate/record?ltdId=${_record?.ltdId}`)
|
click: _record => window.open(location.origin + `#/partner/rebate/record?ltdId=${_record?.ltdId}`)
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
]
|
];
|
||||||
|
}
|
||||||
|
initSFNew() {
|
||||||
|
this.schemaView = {
|
||||||
|
properties: {
|
||||||
|
smsVerifyCode: {
|
||||||
|
title: '调整金额',
|
||||||
|
type: 'string',
|
||||||
|
ui: {
|
||||||
|
widget: 'custom',
|
||||||
|
placeholder: '请输入金额',
|
||||||
|
|
||||||
|
errors: {
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
remark: {
|
||||||
|
title: '备注',
|
||||||
|
type: 'string',
|
||||||
|
maxLength: 50,
|
||||||
|
ui: {
|
||||||
|
placeholder: '请输入备注',
|
||||||
|
widget: 'textarea',
|
||||||
|
autosize: { minRows: 3, maxRows: 6 }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
required: ['phone', 'remark'],
|
||||||
|
};
|
||||||
|
this.uiView = {
|
||||||
|
'*': {
|
||||||
|
spanLabelFixed: 100,
|
||||||
|
grid: { span: 24 },
|
||||||
|
},
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
resetSF() {
|
resetSF() {
|
||||||
this.sf.reset();
|
this.sf.reset();
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.st.reset();
|
this.st.reset();
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
search() {
|
search() {
|
||||||
this.st.load(1);
|
this.st.load(1);
|
||||||
}
|
}
|
||||||
@ -142,16 +193,15 @@ export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
|||||||
if (res) {
|
if (res) {
|
||||||
this.billDetailList = res;
|
this.billDetailList = res;
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export() {}
|
||||||
export() { }
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查看入账记录
|
* 查看入账记录
|
||||||
* @param record 当前行
|
* @param record 当前行
|
||||||
*/
|
*/
|
||||||
viewBookedRecord(record: any) {
|
viewBookedRecord(record: any) {
|
||||||
window.open(location.origin + `#/partner/recorded/record?ltdId=${record?.ltdId}`);
|
window.open(location.origin + `#/partner/recorded/record?ltdId=${record?.ltdId}`);
|
||||||
}
|
}
|
||||||
@ -167,22 +217,34 @@ export class PartnerAccountManagementRecordedDetailComponent implements OnInit {
|
|||||||
this.detailRecord = record;
|
this.detailRecord = record;
|
||||||
this.getBillDetail(record?.ltdId);
|
this.getBillDetail(record?.ltdId);
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 调整待入账金额
|
||||||
|
* @param record 当前行
|
||||||
|
*/
|
||||||
|
changeStalyAccount(record: any) {
|
||||||
|
this.changeAccount = true;
|
||||||
|
this.initSFNew();
|
||||||
|
this.changeRecord = record;
|
||||||
|
// this.getBillDetail(record?.ltdId);
|
||||||
|
}
|
||||||
|
|
||||||
getInvoiceSummary() {
|
getInvoiceSummary() {
|
||||||
this.service.request(this.service.$api_get_invoice_summary, { partnerId: this.roleId }).subscribe(res => {
|
this.service.request(this.service.$api_get_invoice_summary, { partnerId: this.roleId }).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.summaryObj = res;
|
this.summaryObj = res;
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
this.showBillDetail = false;
|
this.showBillDetail = false;
|
||||||
this.detailRecord = {};
|
this.detailRecord = {};
|
||||||
|
}
|
||||||
|
handleCancelA() {
|
||||||
|
this.changeAccount = false;
|
||||||
|
this.changeRecord = {};
|
||||||
}
|
}
|
||||||
goBack() {
|
goBack() {
|
||||||
window.history.go(-1);
|
window.history.go(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,10 +1,20 @@
|
|||||||
|
/*
|
||||||
|
* @Description :
|
||||||
|
* @Version : 1.0
|
||||||
|
* @Author : Shiming
|
||||||
|
* @Date : 2022-04-21 13:49:22
|
||||||
|
* @LastEditors : Shiming
|
||||||
|
* @LastEditTime : 2022-05-11 19:56:49
|
||||||
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\account-management\\services\\account-managemant.service.ts
|
||||||
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
|
*/
|
||||||
import { Injectable, Injector } from '@angular/core';
|
import { Injectable, Injector } from '@angular/core';
|
||||||
import { BaseService } from '@shared';
|
import { BaseService, ShipperBaseService } from '@shared';
|
||||||
|
|
||||||
@Injectable({
|
@Injectable({
|
||||||
providedIn: 'root'
|
providedIn: 'root'
|
||||||
})
|
})
|
||||||
export class AccountManagemantService extends BaseService {
|
export class AccountManagemantService extends ShipperBaseService {
|
||||||
|
|
||||||
$api_get_account_management_page = `/api/bpc/accountBalancePartner/getPartnerAccountBalanceByOperator`; // 账户管理
|
$api_get_account_management_page = `/api/bpc/accountBalancePartner/getPartnerAccountBalanceByOperator`; // 账户管理
|
||||||
$api_get_virtual_detail_page = `/api/bpc/accountBalancePartner/getPartnerAccountBalanceInfoByOperator`;//虚拟账户明细
|
$api_get_virtual_detail_page = `/api/bpc/accountBalancePartner/getPartnerAccountBalanceInfoByOperator`;//虚拟账户明细
|
||||||
|
|||||||
@ -42,27 +42,34 @@ export class ParterChannelSalesEditComponent implements OnInit {
|
|||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
|
console.log(this.sts);
|
||||||
|
|
||||||
if (!this.sts) {
|
if (!this.sts) {
|
||||||
this.service.request(this.service.$api_getChannelSalesInfo, { id: this.i?.id }).subscribe(res => {
|
this.service.request(this.service.$api_getChannelSalesInfo, { id: this.i?.id }).subscribe(res => {
|
||||||
const List: any = [];
|
const List: any = [];
|
||||||
|
const List3: any = [];
|
||||||
if (res) {
|
if (res) {
|
||||||
let value1 = Object.assign({}, res);
|
let value1 = Object.assign({}, res);
|
||||||
delete value1.employeeVO;
|
delete value1.employeeVO;
|
||||||
let value = res.employeeVO;
|
let value = res.employeeVO;
|
||||||
List.push({ label: value.empName + '/' + value.empNo, value: value.empNo });
|
List.push({ label: value.empName + '/' + value.empNo, value: value.empNo });
|
||||||
setTimeout(() => {
|
res.roleInfoVOList.forEach((element: any) => {
|
||||||
if (this.sf) {
|
List3.push(element.id);
|
||||||
console.log(this.sf.getProperty('/employeeVO')!.schema);
|
});
|
||||||
|
setTimeout(() => {
|
||||||
this.sf.getProperty('/employeeVO')!.schema.enum = List;
|
if (this.sf) {
|
||||||
this.sf.getProperty('/employeeVO')!.widget.reset(List);
|
this.sf.getProperty('/employeeVO')!.schema.enum = List;
|
||||||
}
|
this.sf.getProperty('/employeeVO')!.widget.reset(List);
|
||||||
if (value.empNo) {
|
}
|
||||||
this.sf.setValue('/employeeVO', value.empNo);
|
if (value.empNo) {
|
||||||
this.currentOAItem = value;
|
this.sf.setValue('/employeeVO', value.empNo);
|
||||||
this.sf.setValue('/phoneNumber', res.telephone);
|
console.log(List3);
|
||||||
}
|
|
||||||
})
|
this.sf.setValue('/roleIds', List3);
|
||||||
|
this.currentOAItem = value;
|
||||||
|
this.sf.setValue('/phoneNumber', res.telephone);
|
||||||
|
}
|
||||||
|
});
|
||||||
this.record = value1;
|
this.record = value1;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -88,6 +95,7 @@ export class ParterChannelSalesEditComponent implements OnInit {
|
|||||||
title: '手机号',
|
title: '手机号',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
maxLength: 11,
|
maxLength: 11,
|
||||||
|
readOnly: !this.sts,
|
||||||
ui: {
|
ui: {
|
||||||
placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
}
|
}
|
||||||
@ -114,6 +122,7 @@ export class ParterChannelSalesEditComponent implements OnInit {
|
|||||||
title: '关联OA员工',
|
title: '关联OA员工',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
maxLength: 30,
|
maxLength: 30,
|
||||||
|
readOnly: !this.sts,
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
// serverSearch: true,
|
// serverSearch: true,
|
||||||
@ -203,14 +212,14 @@ export class ParterChannelSalesEditComponent implements OnInit {
|
|||||||
close() {
|
close() {
|
||||||
this.modalRef.destroy();
|
this.modalRef.destroy();
|
||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
this.sf.validator({ emitError: true });
|
this.sf.validator({ emitError: true });
|
||||||
|
|
||||||
if (!this.sf.valid) return;
|
if (!this.sf.valid) return;
|
||||||
let params: any= {
|
let params: any = {
|
||||||
...this.sf?.value,
|
...this.sf?.value
|
||||||
}
|
};
|
||||||
delete params.telephone
|
delete params.telephone;
|
||||||
this.service.request(this.service.$api_save, { ...params, employeeVO: this.currentOAItem }).subscribe(res => {
|
this.service.request(this.service.$api_save, { ...params, employeeVO: this.currentOAItem }).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.service.msgSrv.success(res.msg);
|
this.service.msgSrv.success(res.msg);
|
||||||
|
|||||||
@ -247,11 +247,11 @@ export class TaxManagementIndividualCollectComponent extends BasicTableComponent
|
|||||||
uploadSetting() {
|
uploadSetting() {
|
||||||
let params: any;
|
let params: any;
|
||||||
if (this.selectedRows.length === 0) {
|
if (this.selectedRows.length === 0) {
|
||||||
params ={}
|
params =[]
|
||||||
} else{
|
} else{
|
||||||
params ={ ids: []}
|
params =[]
|
||||||
this.selectedRows.forEach(item => {
|
this.selectedRows.forEach(item => {
|
||||||
params.ids.push(item.id);
|
params.push(item.id);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
this.service.request(this.service.$api_get_updateData,params).subscribe((res: any) => {
|
this.service.request(this.service.$api_get_updateData,params).subscribe((res: any) => {
|
||||||
@ -268,6 +268,6 @@ export class TaxManagementIndividualCollectComponent extends BasicTableComponent
|
|||||||
|
|
||||||
// 导出
|
// 导出
|
||||||
exprot() {
|
exprot() {
|
||||||
this.service.exportStart({ ...this.sfValue, pageSize: -1 }, this.service.$api_taxSummary_export);
|
this.service.exportStart({ ...this.reqParams, pageSize: -1 }, this.service.$api_taxSummary_export);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -383,11 +383,11 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent
|
|||||||
resetData() {
|
resetData() {
|
||||||
let params: any;
|
let params: any;
|
||||||
if (this.selectedRows.length === 0) {
|
if (this.selectedRows.length === 0) {
|
||||||
params ={}
|
params =[]
|
||||||
} else{
|
} else{
|
||||||
params ={ ids: []}
|
params =[]
|
||||||
this.selectedRows.forEach(item => {
|
this.selectedRows.forEach(item => {
|
||||||
params.ids.push(item.id);
|
params.push(item.id);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
this.service.request(this.service.$api_get_taxDeclaration_updateAll, params).subscribe((res: any) => {
|
this.service.request(this.service.$api_get_taxDeclaration_updateAll, params).subscribe((res: any) => {
|
||||||
@ -431,7 +431,7 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent
|
|||||||
|
|
||||||
// 导出
|
// 导出
|
||||||
exprot() {
|
exprot() {
|
||||||
this.service.exportStart({ ...this.sfValue, pageSize: -1 }, this.service.$api_taxDeclaration_export);
|
this.service.exportStart({ ...this.reqParams, pageSize: -1 }, this.service.$api_taxDeclaration_export);
|
||||||
}
|
}
|
||||||
|
|
||||||
openWainingModal(content: string, title = '提示') {
|
openWainingModal(content: string, title = '提示') {
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-05-06 15:31:19
|
* @Date : 2022-05-06 15:31:19
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-05-11 14:54:00
|
* @LastEditTime : 2022-05-11 21:04:42
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\tax-management\\components\\individual-income\\individual-income.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\tax-management\\components\\individual-income\\individual-income.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -73,11 +73,17 @@
|
|||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooterEvaluate" (nzOnOk)="handleOK()"
|
<nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooterEvaluate"
|
||||||
(nzOnCancel)="handleCancel()">
|
(nzOnCancel)="handleCancel()">
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
<div> 司机姓名:张三/13812345678 </div>
|
<div *ngIf="oneStatus">
|
||||||
|
<div> 司机姓名:{{driverRecord?.xm}}/{{driverRecord.lxdh}} </div>
|
||||||
<div> 是否确认要将该司机的起征点同步调整为超过15万? </div>
|
<div> 是否确认要将该司机的起征点同步调整为超过15万? </div>
|
||||||
|
</div>
|
||||||
|
<div *ngIf="!oneStatus">
|
||||||
|
<div> 已选择{{selectedRows.length}}个司机 </div>
|
||||||
|
<div> 是否确认要将该司机的起征点同步调整为超过15万? </div>
|
||||||
|
</div>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooterEvaluate>
|
<ng-template #nzModalFooterEvaluate>
|
||||||
<button nz-button nzType="default" (click)="handleCancel()">取消</button>
|
<button nz-button nzType="default" (click)="handleCancel()">取消</button>
|
||||||
|
|||||||
@ -23,8 +23,10 @@ export class TaxManagementIndividualIncomeComponent extends BasicTableComponent
|
|||||||
];
|
];
|
||||||
selectedIndex = '0'; //选择的项目
|
selectedIndex = '0'; //选择的项目
|
||||||
isVisible: boolean = false;
|
isVisible: boolean = false;
|
||||||
|
oneStatus: boolean = false;
|
||||||
|
|
||||||
selectedRows: any[] = [];
|
selectedRows: any[] = [];
|
||||||
|
driverRecord!: any;
|
||||||
|
|
||||||
constructor(public service: TaxManagementService, public searchDrawerService: SearchDrawerService) {
|
constructor(public service: TaxManagementService, public searchDrawerService: SearchDrawerService) {
|
||||||
super(searchDrawerService);
|
super(searchDrawerService);
|
||||||
@ -287,11 +289,20 @@ export class TaxManagementIndividualIncomeComponent extends BasicTableComponent
|
|||||||
* @param record 记录实例
|
* @param record 记录实例
|
||||||
*/
|
*/
|
||||||
resetData() {
|
resetData() {
|
||||||
// if (this.selectedRows.length === 0) {
|
if (this.selectedRows.length === 0) {
|
||||||
// this.openWainingModal('请选择需要更新的数据!');
|
this.service.msgSrv.error('请选择明细!');
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
// this.isVisible = true;
|
if(this.selectedRows.length === 1) {
|
||||||
|
console.log(this.selectedRows);
|
||||||
|
this.oneStatus = true
|
||||||
|
this.driverRecord = this.selectedRows[0]
|
||||||
|
|
||||||
|
} else {
|
||||||
|
this.oneStatus = false
|
||||||
|
|
||||||
|
}
|
||||||
|
this.isVisible = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
selectChange(item: any) {
|
selectChange(item: any) {
|
||||||
@ -328,11 +339,11 @@ export class TaxManagementIndividualIncomeComponent extends BasicTableComponent
|
|||||||
uploadSetting() {
|
uploadSetting() {
|
||||||
let params: any;
|
let params: any;
|
||||||
if (this.selectedRows.length === 0) {
|
if (this.selectedRows.length === 0) {
|
||||||
params ={}
|
params =[]
|
||||||
} else{
|
} else{
|
||||||
params ={ ids: []}
|
params =[]
|
||||||
this.selectedRows.forEach(item => {
|
this.selectedRows.forEach(item => {
|
||||||
params.ids.push(item.id);
|
params.push(item.id);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
this.service.request(this.service.$api_update_individual_income_page, params).subscribe((res: any) => {
|
this.service.request(this.service.$api_update_individual_income_page, params).subscribe((res: any) => {
|
||||||
@ -349,10 +360,21 @@ export class TaxManagementIndividualIncomeComponent extends BasicTableComponent
|
|||||||
|
|
||||||
// 导出
|
// 导出
|
||||||
exprot() {
|
exprot() {
|
||||||
this.service.exportStart({ ...this.sfValue, pageSize: -1 }, this.service.$api_taxIncome_export);
|
this.service.exportStart({ ...this.sfValue,declareStatus: this.selectedIndex, pageSize: -1 }, this.service.$api_taxIncome_export);
|
||||||
}
|
}
|
||||||
|
|
||||||
handleOK() {}
|
handleOK() {
|
||||||
|
let params: any = [];
|
||||||
|
if (this.selectedRows.length !== 0) {
|
||||||
|
this.selectedRows.forEach(item => {
|
||||||
|
params.push(item.id);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
this.service.request(this.service.$api_fixThreshold, params).subscribe((res) => {
|
||||||
|
console.log(res);
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
this.isVisible = false;
|
this.isVisible = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -312,7 +312,7 @@ export class TaxManagementInvoiceReportingComponent extends BasicTableComponent
|
|||||||
* 异步导出
|
* 异步导出
|
||||||
*/
|
*/
|
||||||
export() {
|
export() {
|
||||||
this.service.exportStart(this.reqParams, this.service.$api_invoiceUpload_export);
|
this.service.exportStart({...this.reqParams, pageSize: -1 }, this.service.$api_invoiceUpload_export);
|
||||||
}
|
}
|
||||||
|
|
||||||
openWainingModal(content: string, title = '提示') {
|
openWainingModal(content: string, title = '提示') {
|
||||||
|
|||||||
@ -95,6 +95,9 @@
|
|||||||
<ng-template st-row="orderAmount" let-item let-index="index">
|
<ng-template st-row="orderAmount" let-item let-index="index">
|
||||||
<div class="text-right">{{ item?.orderAmount | currency }}</div>
|
<div class="text-right">{{ item?.orderAmount | currency }}</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
<ng-template st-row="wayAmount" let-item let-index="index">
|
||||||
|
<div class="text-right">{{ item?.wayAmount | currency }}</div>
|
||||||
|
</ng-template>
|
||||||
</st>
|
</st>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<ng-template #extraTemplate>
|
<ng-template #extraTemplate>
|
||||||
|
|||||||
@ -239,7 +239,7 @@ export class TaxManagementOrderReportingComponent extends BasicTableComponent im
|
|||||||
{ title: '司机身份证号', index: 'driverCertificateNumber', className: 'text-center', width: '180px' },
|
{ title: '司机身份证号', index: 'driverCertificateNumber', className: 'text-center', width: '180px' },
|
||||||
{ title: '车牌号', index: 'carNo', className: 'text-center', width: '100px' },
|
{ title: '车牌号', index: 'carNo', className: 'text-center', width: '100px' },
|
||||||
{ title: '货物信息', render: 'goodsName', className: 'text-center', width: '200px' },
|
{ title: '货物信息', render: 'goodsName', className: 'text-center', width: '200px' },
|
||||||
{ title: '运费金额', render: 'orderAmount', className: 'text-center', width: '100px' },
|
{ title: '运费金额', render: 'wayAmount', className: 'text-center', width: '100px' },
|
||||||
{ title: '装卸方式', index: 'loadingUnloadWay', className: 'text-center', width: '180px' },
|
{ title: '装卸方式', index: 'loadingUnloadWay', className: 'text-center', width: '180px' },
|
||||||
{ title: '支付方式', index: 'payMent', className: 'text-center', width: '150px' },
|
{ title: '支付方式', index: 'payMent', className: 'text-center', width: '150px' },
|
||||||
{ title: '支付账号', index: 'paymentAccount', className: 'text-center', width: '200px' },
|
{ title: '支付账号', index: 'paymentAccount', className: 'text-center', width: '200px' },
|
||||||
@ -467,7 +467,7 @@ export class TaxManagementOrderReportingComponent extends BasicTableComponent im
|
|||||||
* 异步导出
|
* 异步导出
|
||||||
*/
|
*/
|
||||||
export() {
|
export() {
|
||||||
this.service.exportStart(this.sf?.value, this.service.$api_async_export_order_reporting_list);
|
this.service.exportStart({...this.reqParams, pageSize: -1} ,this.service.$api_async_export_order_reporting_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
openWainingModal(content: string, title = '提示') {
|
openWainingModal(content: string, title = '提示') {
|
||||||
|
|||||||
@ -68,6 +68,8 @@ export class TaxManagementService extends ShipperBaseService {
|
|||||||
$api_taxDeclaration_export = '/api/sdc/taxDeclaration/asyncExport';
|
$api_taxDeclaration_export = '/api/sdc/taxDeclaration/asyncExport';
|
||||||
// 发票上传撤回
|
// 发票上传撤回
|
||||||
$api_invoiceUpload_withdraw = '/api/sdc/invoiceUploadInfo/withdraw';
|
$api_invoiceUpload_withdraw = '/api/sdc/invoiceUploadInfo/withdraw';
|
||||||
|
// 修改起征点
|
||||||
|
$api_fixThreshold = '/api/sdc/taxIncome/fixThreshold';
|
||||||
constructor(public injector: Injector) {
|
constructor(public injector: Injector) {
|
||||||
super(injector);
|
super(injector);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user