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-07 14:49:15
|
* @LastEditTime : 2022-05-10 13:41:21
|
||||||
* @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.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -9,14 +9,11 @@
|
|||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, Inject, OnInit, ViewChild } from '@angular/core';
|
import { Component, Inject, OnInit } from '@angular/core';
|
||||||
import { FormBuilder, FormControl, FormGroup, ValidatorFn, Validators } from '@angular/forms';
|
import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STChange, STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
|
||||||
import { DA_SERVICE_TOKEN, ITokenService } from '@delon/auth';
|
import { DA_SERVICE_TOKEN, ITokenService } from '@delon/auth';
|
||||||
|
|
||||||
import { SFComponent, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
|
||||||
import { NzDrawerRef, NzDrawerService } from 'ng-zorro-antd/drawer';
|
|
||||||
import { NzFormTooltipIcon } from 'ng-zorro-antd/form';
|
import { NzFormTooltipIcon } from 'ng-zorro-antd/form';
|
||||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { AccountService } from '../../services/account.service';
|
import { AccountService } from '../../services/account.service';
|
||||||
@ -30,14 +27,13 @@ export class AccountComponentsCenterEditComponent implements OnInit {
|
|||||||
record: any;
|
record: any;
|
||||||
count = 0;
|
count = 0;
|
||||||
type = 'create';
|
type = 'create';
|
||||||
isVisibleView = false
|
isVisibleView = false;
|
||||||
passwordVisible = false;
|
passwordVisible = false;
|
||||||
passwordVisible2 = false;
|
passwordVisible2 = false;
|
||||||
password: any;
|
password: any;
|
||||||
password2: any;
|
password2: any;
|
||||||
interval$: any;
|
interval$: any;
|
||||||
confirmationValidator =
|
confirmationValidator = (control: FormControl): { [s: string]: boolean } => {
|
||||||
(control: FormControl): { [s: string]: boolean } => {
|
|
||||||
if (!control.value) {
|
if (!control.value) {
|
||||||
return { required: true };
|
return { required: true };
|
||||||
} else if (control?.value !== this.validateForm?.value?.passWord) {
|
} else if (control?.value !== this.validateForm?.value?.passWord) {
|
||||||
@ -51,7 +47,6 @@ export class AccountComponentsCenterEditComponent implements OnInit {
|
|||||||
};
|
};
|
||||||
constructor(
|
constructor(
|
||||||
public router: Router,
|
public router: Router,
|
||||||
public ar: ActivatedRoute,
|
|
||||||
private modalRef: NzModalRef,
|
private modalRef: NzModalRef,
|
||||||
private fb: FormBuilder,
|
private fb: FormBuilder,
|
||||||
public service: AccountService,
|
public service: AccountService,
|
||||||
@ -61,19 +56,21 @@ export class AccountComponentsCenterEditComponent implements OnInit {
|
|||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initForm();
|
this.initForm();
|
||||||
}
|
}
|
||||||
initForm () {
|
initForm() {
|
||||||
this.validateForm = this.fb.group({
|
this.validateForm = this.fb.group({
|
||||||
passWord: [null,
|
passWord: [
|
||||||
[
|
null,
|
||||||
Validators.required,
|
[
|
||||||
Validators.maxLength(16),
|
Validators.required,
|
||||||
Validators.minLength(8),
|
Validators.maxLength(16),
|
||||||
Validators.pattern('^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z-_]{8,16}$')
|
Validators.minLength(8),
|
||||||
]],
|
Validators.pattern('^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z-_]{8,16}$')
|
||||||
passWordTo: [null, [ Validators.required, Validators.maxLength(16), Validators.minLength(8), this.confirmationValidator,]],
|
]
|
||||||
smsVerifyCode: [null, [Validators.required]],
|
],
|
||||||
});
|
passWordTo: [null, [Validators.required, Validators.maxLength(16), Validators.minLength(8), this.confirmationValidator]],
|
||||||
}
|
smsVerifyCode: [null, [Validators.required]]
|
||||||
|
});
|
||||||
|
}
|
||||||
destroyModal(): void {
|
destroyModal(): void {
|
||||||
this.modalRef.destroy();
|
this.modalRef.destroy();
|
||||||
}
|
}
|
||||||
@ -84,28 +81,28 @@ export class AccountComponentsCenterEditComponent implements OnInit {
|
|||||||
this.service.msgSrv.success('发送成功');
|
this.service.msgSrv.success('发送成功');
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
this.codeCountDown();
|
this.codeCountDown();
|
||||||
}else {
|
} else {
|
||||||
this.service.msgSrv.success(res.msg);
|
this.service.msgSrv.success(res.msg);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
if(!this.validateForm.valid) {
|
if (!this.validateForm.valid) {
|
||||||
this.service.msgSrv.warning('必填项为空或格式错误,请检查!')
|
this.service.msgSrv.warning('必填项为空或格式错误,请检查!');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const params = {
|
const params = {
|
||||||
...this.validateForm.value
|
...this.validateForm.value
|
||||||
};
|
};
|
||||||
this.service.request(this.service.$api_set_phoneUpdatePassword, params).subscribe((res) => {
|
this.service.request(this.service.$api_set_phoneUpdatePassword, params).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('修改密码成功!');
|
this.service.msgSrv.success('修改密码成功!');
|
||||||
this.isVisibleView = true;
|
this.isVisibleView = true;
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.tokenService.clear();
|
this.tokenService.clear();
|
||||||
this.router.navigate(['/passport/login'])
|
this.router.navigate(['/passport/login']);
|
||||||
this.modalRef.close()
|
this.modalRef.close();
|
||||||
}, 3000)
|
}, 3000);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -120,11 +117,11 @@ export class AccountComponentsCenterEditComponent implements OnInit {
|
|||||||
}, 1000);
|
}, 1000);
|
||||||
}
|
}
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
this.isVisibleView = false
|
this.isVisibleView = false;
|
||||||
}
|
}
|
||||||
handleOK() {
|
handleOK() {
|
||||||
this.modalRef.close()
|
this.modalRef.close();
|
||||||
this.tokenService.clear();
|
this.tokenService.clear();
|
||||||
this.router.navigate(['/passport/login'])
|
this.router.navigate(['/passport/login']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -113,9 +113,10 @@
|
|||||||
line-height: 21px;
|
line-height: 21px;
|
||||||
}
|
}
|
||||||
|
|
||||||
// .text-truncate {
|
.text-truncate {
|
||||||
// white-space: normal;
|
white-space: normal;
|
||||||
// }
|
}
|
||||||
|
|
||||||
// 强制头部居中
|
// 强制头部居中
|
||||||
.ant-table-container table>thead>tr>.options {
|
.ant-table-container table>thead>tr>.options {
|
||||||
text-align: center !important;
|
text-align: center !important;
|
||||||
|
|||||||
@ -80,7 +80,8 @@
|
|||||||
(change)="stChange($event)"
|
(change)="stChange($event)"
|
||||||
>
|
>
|
||||||
<ng-template st-row="contractCode" let-item let-index="index">
|
<ng-template st-row="contractCode" let-item let-index="index">
|
||||||
<a [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a>
|
<a *ngIf="item.esignFlowStatus == '2'" (click)="service.openURL(item?.contractFilePath)">{{ item?.contractCode }}</a>
|
||||||
|
<a *ngIf="item.esignFlowStatus !== '2'" [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</st>
|
</st>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-07 15:57:49
|
* @Date : 2021-12-07 15:57:49
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-23 20:11:50
|
* @LastEditTime : 2022-05-07 17:52:57
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-list\\contract-list.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-list\\contract-list.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -51,8 +51,8 @@
|
|||||||
<st #st [data]="service.$api_listDetailed_page" [columns]="columns" [req]="{ params: reqParams }" [loading]="false"
|
<st #st [data]="service.$api_listDetailed_page" [columns]="columns" [req]="{ params: reqParams }" [loading]="false"
|
||||||
[scroll]="{ x: '1200px', y: '370px' }" (change)="stChange($event)">
|
[scroll]="{ x: '1200px', y: '370px' }" (change)="stChange($event)">
|
||||||
<ng-template st-row="contractCode" let-item let-index="index">
|
<ng-template st-row="contractCode" let-item let-index="index">
|
||||||
<a (click)="service.openURL(item?.contractFilePath)">{{ item?.contractCode }}</a>
|
<a *ngIf="item.esignFlowStatus == '2'" (click)="service.openURL(item?.contractFilePath)">{{ item?.contractCode }}</a>
|
||||||
<!-- <a [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a> -->
|
<a *ngIf="item.esignFlowStatus !== '2'" [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="signingObject" let-item let-index="index">
|
<ng-template st-row="signingObject" let-item let-index="index">
|
||||||
<span *ngIf="item.signingObject == 0"></span>
|
<span *ngIf="item.signingObject == 0"></span>
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-01-07 13:29:57
|
* @Date : 2022-01-07 13:29:57
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-24 10:08:28
|
* @LastEditTime : 2022-05-07 17:56:08
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-partner\\contract-partner.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-partner\\contract-partner.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -80,7 +80,8 @@
|
|||||||
(change)="stChange($event)"
|
(change)="stChange($event)"
|
||||||
>
|
>
|
||||||
<ng-template st-row="contractCode" let-item let-index="index">
|
<ng-template st-row="contractCode" let-item let-index="index">
|
||||||
<a [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a>
|
<a *ngIf="item.esignFlowStatus == '2'" (click)="service.openURL(item?.contractFilePath)">{{ item?.contractCode }}</a>
|
||||||
|
<a *ngIf="item.esignFlowStatus !== '2'" [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</st>
|
</st>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-04-06 10:57:56
|
* @Date : 2022-04-06 10:57:56
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-05-07 09:43:16
|
* @LastEditTime : 2022-05-09 13:59:19
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\datascreen.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\datatable\\components\\datascreen\\datascreen.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -48,31 +48,6 @@
|
|||||||
<nz-card nzTitle="本年交易趋势">
|
<nz-card nzTitle="本年交易趋势">
|
||||||
<app-financetable-curve-min #curve [chartData]="chartData2"></app-financetable-curve-min>
|
<app-financetable-curve-min #curve [chartData]="chartData2"></app-financetable-curve-min>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
<nz-card nzTitle="实时货源" style="height: 400px">
|
|
||||||
<st
|
|
||||||
#st
|
|
||||||
multiSort
|
|
||||||
[columns]="columns"
|
|
||||||
[scroll]="{ y: '280px' }"
|
|
||||||
[data]="service.$api_getRealTimeSupply"
|
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
|
||||||
[res]="{ reName: { list: 'data' } }"
|
|
||||||
[page]="{ show: false, showSize: false, pageSizes: [5, 50, 100] }"
|
|
||||||
[loading]="service.http.loading"
|
|
||||||
>
|
|
||||||
<ng-template st-row="index" let-item let-index="index">
|
|
||||||
{{ index + 1 }}
|
|
||||||
</ng-template>
|
|
||||||
<ng-template st-row="weight" let-item let-index="index">
|
|
||||||
{{ item.weight ? item.weight + '吨' : '' }}
|
|
||||||
{{ item.volume ? item.volume + '方' : '' }}
|
|
||||||
</ng-template>
|
|
||||||
<ng-template st-row="weight" let-item let-index="index">
|
|
||||||
{{ item.weight ? item.weight + '吨' : '' }}
|
|
||||||
{{ item.volume ? item.volume + '方' : '' }}
|
|
||||||
</ng-template>
|
|
||||||
</st>
|
|
||||||
</nz-card>
|
|
||||||
</div>
|
</div>
|
||||||
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
|
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
|
||||||
<nz-card>
|
<nz-card>
|
||||||
@ -91,11 +66,6 @@
|
|||||||
<div style="min-height: 550px">
|
<div style="min-height: 550px">
|
||||||
<app-datatable-customindex-map style="max-height: 680px" #map [chartData]="chartData"></app-datatable-customindex-map>
|
<app-datatable-customindex-map style="max-height: 680px" #map [chartData]="chartData"></app-datatable-customindex-map>
|
||||||
</div>
|
</div>
|
||||||
<nz-card>
|
|
||||||
<nz-row [nzGutter]="24">
|
|
||||||
<g2-bar #bar height="350" [delay]="300" repaint="true" [title]="'本月发货量排名'" [data]="salesData2" (ready)="genData()"></g2-bar>
|
|
||||||
</nz-row>
|
|
||||||
</nz-card>
|
|
||||||
</div>
|
</div>
|
||||||
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
|
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
|
||||||
<nz-card>
|
<nz-card>
|
||||||
@ -156,11 +126,48 @@
|
|||||||
</nz-col>
|
</nz-col>
|
||||||
</nz-row>
|
</nz-row>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div nz-row [nzGutter]="24">
|
||||||
|
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
|
||||||
|
|
||||||
|
<nz-card nzTitle="实时货源" style="height: 400px">
|
||||||
|
<st
|
||||||
|
#st
|
||||||
|
multiSort
|
||||||
|
[columns]="columns"
|
||||||
|
[scroll]="{ y: '280px' }"
|
||||||
|
[data]="service.$api_getRealTimeSupply"
|
||||||
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
|
||||||
|
[res]="{ reName: { list: 'data' } }"
|
||||||
|
[page]="{ show: false, showSize: false, pageSizes: [5, 50, 100] }"
|
||||||
|
[loading]="service.http.loading"
|
||||||
|
>
|
||||||
|
<ng-template st-row="index" let-item let-index="index">
|
||||||
|
{{ index + 1 }}
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="weight" let-item let-index="index">
|
||||||
|
{{ item.weight ? item.weight + '吨' : '' }}
|
||||||
|
{{ item.volume ? item.volume + '方' : '' }}
|
||||||
|
</ng-template>
|
||||||
|
<ng-template st-row="weight" let-item let-index="index">
|
||||||
|
{{ item.weight ? item.weight + '吨' : '' }}
|
||||||
|
{{ item.volume ? item.volume + '方' : '' }}
|
||||||
|
</ng-template>
|
||||||
|
</st>
|
||||||
|
</nz-card>
|
||||||
|
</div>
|
||||||
|
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
|
||||||
|
<nz-card style="height: 400px">
|
||||||
|
<g2-bar #bar height="350" [delay]="300" repaint="true" [title]="'本月发货量排名'" [data]="salesData2" (ready)="genData()"></g2-bar>
|
||||||
|
</nz-card>
|
||||||
|
</div>
|
||||||
|
<div nz-col class="gutter-row" nzXs="12" nzSm="12" nzMd="12" nzLg="12" nzXl="8" nzXXl="8">
|
||||||
<nz-card nzTitle="实时运单风控" style="height: 400px">
|
<nz-card nzTitle="实时运单风控" style="height: 400px">
|
||||||
<st
|
<st
|
||||||
#st
|
#st
|
||||||
multiSort
|
multiSort
|
||||||
[scroll]="{ y: '280px' }"
|
[scroll]="{ y: '300px' }"
|
||||||
[columns]="orderColumns"
|
[columns]="orderColumns"
|
||||||
[data]="service.$api_getRealTimeWaybillRiskControl"
|
[data]="service.$api_getRealTimeWaybillRiskControl"
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqOrderParams }"
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqOrderParams }"
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
.ant-table-thead > tr > th, .ant-table-tbody > tr > td, .ant-table tfoot > tr > th, .ant-table tfoot > tr > td {
|
.ant-table-thead > tr > th, .ant-table-tbody > tr > td, .ant-table tfoot > tr > th, .ant-table tfoot > tr > td {
|
||||||
padding: 0;
|
padding: 5px;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -86,6 +86,8 @@ export class DatatableOperationtableComponent implements OnInit {
|
|||||||
this.service.request(this.service.$api_operationalReportHistogram, params).subscribe(res => {
|
this.service.request(this.service.$api_operationalReportHistogram, params).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.chartData = res
|
this.chartData = res
|
||||||
|
this.pillar.reRender()
|
||||||
|
this.curve.reRender()
|
||||||
if(flag) { // 除第一次加载外
|
if(flag) { // 除第一次加载外
|
||||||
this.pillar.reRender()
|
this.pillar.reRender()
|
||||||
this.curve.reRender()
|
this.curve.reRender()
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
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 { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { DownloadService } from '../../services/download.service';
|
import { DownloadService } from '../../services/download.service';
|
||||||
|
|
||||||
@ -16,7 +14,7 @@ export class DownloadComponentsListComponent implements OnInit {
|
|||||||
columns: STColumn[] = [];
|
columns: STColumn[] = [];
|
||||||
@ViewChild('st', { static: false }) st!: STComponent;
|
@ViewChild('st', { static: false }) st!: STComponent;
|
||||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||||
constructor(public service: DownloadService, private modal: NzModalService, private router: Router, private ar: ActivatedRoute) {}
|
constructor(public service: DownloadService, private modal: NzModalService) {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询参数
|
* 查询参数
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2021-12-30 19:36:30
|
* @Date : 2021-12-30 19:36:30
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-02-23 16:35:15
|
* @LastEditTime : 2022-05-07 17:33:01
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\cost-management\\cost-management.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\cost-management\\cost-management.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -50,11 +50,11 @@
|
|||||||
</div> -->
|
</div> -->
|
||||||
<st #st [data]="service.$api_get_cost_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
<st #st [data]="service.$api_get_cost_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
||||||
[loading]="false" [scroll]="{ x: '2000px',y:scrollY }">
|
[loading]="false" [scroll]="{ x: '2000px',y:scrollY }">
|
||||||
<ng-template st-row="armoeny" let-item let-index="index">
|
<!-- <ng-template st-row="armoeny" let-item let-index="index">
|
||||||
{{ item.armoeny | currency }}
|
{{ item.armoeny | currency }}
|
||||||
</ng-template>
|
</ng-template> -->
|
||||||
<ng-template st-row="hrmoney" let-item let-index="index">
|
<ng-template st-row="hrmoney" let-item let-index="index">
|
||||||
{{ item.hrmoney | currency }}
|
{{ item.armoeny ? (item.armoeny| currency ): '--' }} / {{ item.hrmoney? (item.hrmoney | currency) : '--'}}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="artocode" let-item let-index="index"> {{ item.cnoCode }}/{{ item.cnoName }} </ng-template>
|
<ng-template st-row="artocode" let-item let-index="index"> {{ item.cnoCode }}/{{ item.cnoName }} </ng-template>
|
||||||
<ng-template st-row="hrpaymoney" let-item let-index="index">
|
<ng-template st-row="hrpaymoney" let-item let-index="index">
|
||||||
|
|||||||
@ -84,7 +84,7 @@ export class CostManagementComponent extends BasicTableComponent implements OnIn
|
|||||||
|
|
||||||
|
|
||||||
exportList() {
|
exportList() {
|
||||||
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_get_exportPlatformAccountBalanceByOperator);
|
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_get_cost_page_export);
|
||||||
}
|
}
|
||||||
|
|
||||||
routeTo(url: string, params?: any, status?: any) {
|
routeTo(url: string, params?: any, status?: any) {
|
||||||
@ -252,8 +252,8 @@ export class CostManagementComponent extends BasicTableComponent implements OnIn
|
|||||||
{ title: '结算客户', render: 'artocode', width: 200, className: 'text-left' },
|
{ title: '结算客户', render: 'artocode', width: 200, className: 'text-left' },
|
||||||
{ title: '应收对象', index: 'artoname', width: 200, className: 'text-left' },
|
{ title: '应收对象', index: 'artoname', width: 200, className: 'text-left' },
|
||||||
{ title: '应付对象', index: 'hrtoname', width: 200, className: 'text-left' },
|
{ title: '应付对象', index: 'hrtoname', width: 200, className: 'text-left' },
|
||||||
{ title: '应收金额', render: 'armoeny', width: 150, className: 'text-right' },
|
{ title: '应收/应付金额', render: 'hrmoney', width: 150, className: 'text-right' },
|
||||||
{ title: '应付金额', render: 'hrmoney', width: 150, className: 'text-right' },
|
// { title: '应付金额', render: 'hrmoney', width: 150, className: 'text-right' },
|
||||||
{ title: '收/付款金额', render: 'hrpaymoney', width: 150, className: 'text-right' },
|
{ title: '收/付款金额', render: 'hrpaymoney', width: 150, className: 'text-right' },
|
||||||
{ title: '开/收票金额', render: 'hrvatmoney', width: 150, className: 'text-right' },
|
{ title: '开/收票金额', render: 'hrvatmoney', width: 150, className: 'text-right' },
|
||||||
{ title: '创建时间', index: 'createTime', type: 'date', width: 200, className: 'text-center' },
|
{ title: '创建时间', index: 'createTime', type: 'date', width: 200, className: 'text-center' },
|
||||||
|
|||||||
@ -48,6 +48,9 @@
|
|||||||
<div></div>
|
<div></div>
|
||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
||||||
|
<button nz-button nzDanger [disabled]="service.http.loading" acl
|
||||||
|
[acl-ability]="['FINANCIAL-PAYABLE-export']" (click)='exportList()'>
|
||||||
|
导出</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<st #st [data]="service.$api_get_fico_ph_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
<st #st [data]="service.$api_get_fico_ph_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
||||||
|
|||||||
@ -21,11 +21,7 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
|
|
||||||
selectedRows: any[] = [];
|
selectedRows: any[] = [];
|
||||||
info: any = {};
|
info: any = {};
|
||||||
constructor(
|
constructor(public service: FreightAccountService, private router: Router, public searchDrawerService: SearchDrawerService) {
|
||||||
public service: FreightAccountService,
|
|
||||||
private router: Router,
|
|
||||||
public searchDrawerService: SearchDrawerService
|
|
||||||
) {
|
|
||||||
super(searchDrawerService);
|
super(searchDrawerService);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -77,6 +73,9 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
exportList() {
|
||||||
|
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_get_fico_ph_page_export);
|
||||||
|
}
|
||||||
|
|
||||||
private initSF(): SFSchema {
|
private initSF(): SFSchema {
|
||||||
return {
|
return {
|
||||||
@ -118,7 +117,7 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
enum: [{ value: '1', label: '费用款项' }],
|
enum: [{ value: '1', label: '费用款项' }],
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cno: {
|
cno: {
|
||||||
@ -128,7 +127,7 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
allowClear: true,
|
allowClear: true,
|
||||||
asyncData: () => this.service.getCloseAccount(),
|
asyncData: () => this.service.getCloseAccount()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
driver2IdName: {
|
driver2IdName: {
|
||||||
@ -136,7 +135,7 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
title: '收款人',
|
title: '收款人',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
sts: {
|
sts: {
|
||||||
@ -148,7 +147,7 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
],
|
],
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
phxdate: {
|
phxdate: {
|
||||||
@ -156,7 +155,7 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'sl-from-to-search',
|
widget: 'sl-from-to-search',
|
||||||
format: 'yyyy-MM-dd',
|
format: 'yyyy-MM-dd'
|
||||||
} as SFDateWidgetSchema
|
} as SFDateWidgetSchema
|
||||||
},
|
},
|
||||||
createTime: {
|
createTime: {
|
||||||
@ -164,21 +163,21 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'sl-from-to-search',
|
widget: 'sl-from-to-search',
|
||||||
format: 'yyyy-MM-dd',
|
format: 'yyyy-MM-dd'
|
||||||
} as SFDateWidgetSchema
|
} as SFDateWidgetSchema
|
||||||
},
|
},
|
||||||
billHCode: {
|
billHCode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '订单号',
|
title: '订单号',
|
||||||
ui: {
|
ui: {
|
||||||
placeholder: '请输入',
|
placeholder: '请输入'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
feeHCode: {
|
feeHCode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '费用号',
|
title: '费用号',
|
||||||
ui: {
|
ui: {
|
||||||
placeholder: '请输入',
|
placeholder: '请输入'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
remarks: {
|
remarks: {
|
||||||
@ -186,7 +185,7 @@ export class PayableOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
title: '核销备注',
|
title: '核销备注',
|
||||||
ui: {
|
ui: {
|
||||||
autocomplete: 'off',
|
autocomplete: 'off',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -34,6 +34,9 @@
|
|||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
|
||||||
[acl-ability]="['FINANCIAL-PAYMENT-ORDER-list']">筛选</button>
|
[acl-ability]="['FINANCIAL-PAYMENT-ORDER-list']">筛选</button>
|
||||||
|
<button nz-button nzDanger [disabled]="service.http.loading" acl
|
||||||
|
[acl-ability]="['FINANCIAL-PAYMENT-ORDER-export']" (click)='exportList()'>
|
||||||
|
导出</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -77,6 +77,10 @@ export class PaymentOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
exportList() {
|
||||||
|
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_get_payment_page_export);
|
||||||
|
}
|
||||||
|
|
||||||
private initSF(): SFSchema {
|
private initSF(): SFSchema {
|
||||||
return {
|
return {
|
||||||
properties: {
|
properties: {
|
||||||
@ -213,7 +217,7 @@ export class PaymentOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
{ title: '收款人', index: 'hrToLabel', width: 150 },
|
{ title: '收款人', index: 'hrToLabel', width: 150 },
|
||||||
{ title: '应付已核销', index: 'ishrhxLabel', width: 150 },
|
{ title: '应付已核销', index: 'ishrhxLabel', width: 150 },
|
||||||
{ title: '确认日期', index: 'payDate2', type: 'date', className: 'text-center', width: 150 },
|
{ title: '确认日期', index: 'payDate2', type: 'date', className: 'text-center', width: 150 },
|
||||||
{ title: '创建时间', index: 'payDate', type: 'date', className: 'text-center', width: 150 },
|
{ title: '创建时间', index: 'createTime', type: 'date', className: 'text-center', width: 150 },
|
||||||
{ title: '创建人', index: 'createUserIdLabel', width: 160 },
|
{ title: '创建人', index: 'createUserIdLabel', width: 160 },
|
||||||
{ title: '付款备注', index: 'payRemarks', width: 200 },
|
{ title: '付款备注', index: 'payRemarks', width: 200 },
|
||||||
{
|
{
|
||||||
|
|||||||
@ -21,17 +21,20 @@
|
|||||||
|
|
||||||
<nz-card class="table-box">
|
<nz-card class="table-box">
|
||||||
<div class="header_box">
|
<div class="header_box">
|
||||||
<div>
|
<div>
|
||||||
<label class="page_title"> <label class="driver">|</label> 收款单</label>
|
<label class="page_title"> <label class="driver">|</label> 收款单</label>
|
||||||
<label class="ml-md">
|
<label class="ml-md">
|
||||||
已选择
|
已选择
|
||||||
<strong class="text-primary">{{ selectedRows.length }}</strong> 张单
|
<strong class="text-primary">{{ selectedRows.length }}</strong> 张单
|
||||||
<a *ngIf="selectedRows.length > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
|
<a *ngIf="selectedRows.length > 0" (click)="st.clearCheck()" class="ml-lg">清空</a>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
||||||
</div>
|
<button nz-button nzDanger [disabled]="service.http.loading" acl [acl-ability]="['FINANCIAL-RECEIPT-export']"
|
||||||
|
(click)='exportList()'>
|
||||||
|
导出</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="d-flex align-items-center mb-md mt-md">
|
<!-- <div class="d-flex align-items-center mb-md mt-md">
|
||||||
<button nz-button (click)="this.addInvoice()" nzType="primary">添加收款</button>
|
<button nz-button (click)="this.addInvoice()" nzType="primary">添加收款</button>
|
||||||
|
|||||||
@ -81,6 +81,10 @@ export class ReceiptOrderComponent extends BasicTableComponent implements OnInit
|
|||||||
// });
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
exportList() {
|
||||||
|
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_get_receipt_page_export);
|
||||||
|
}
|
||||||
|
|
||||||
private initSF(): SFSchema {
|
private initSF(): SFSchema {
|
||||||
return {
|
return {
|
||||||
properties: {
|
properties: {
|
||||||
|
|||||||
@ -48,6 +48,9 @@
|
|||||||
<div></div>
|
<div></div>
|
||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
||||||
|
<button nz-button nzDanger [disabled]="service.http.loading" acl [acl-ability]="['FINANCIAL-RECEIVABLE-export']"
|
||||||
|
(click)='exportList()'>
|
||||||
|
导出</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -12,7 +12,7 @@ import { FreightAccountService } from '../../services/freight-account.service';
|
|||||||
@Component({
|
@Component({
|
||||||
selector: 'app-receivable-order',
|
selector: 'app-receivable-order',
|
||||||
templateUrl: './receivable-order.component.html',
|
templateUrl: './receivable-order.component.html',
|
||||||
styleUrls: ['../../../commom/less/commom-table.less','../../../commom/less/common-table-bar.less']
|
styleUrls: ['../../../commom/less/commom-table.less', '../../../commom/less/common-table-bar.less']
|
||||||
})
|
})
|
||||||
export class ReceivableOrderComponent extends BasicTableComponent implements OnInit {
|
export class ReceivableOrderComponent extends BasicTableComponent implements OnInit {
|
||||||
@ViewChild('st', { static: true })
|
@ViewChild('st', { static: true })
|
||||||
@ -80,6 +80,9 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
exportList() {
|
||||||
|
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_get_fico_page_export);
|
||||||
|
}
|
||||||
|
|
||||||
private initSF(): SFSchema {
|
private initSF(): SFSchema {
|
||||||
return {
|
return {
|
||||||
@ -121,7 +124,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'dict-select',
|
widget: 'dict-select',
|
||||||
params: { dictKey: 'driverrecord:receive:type' },
|
params: { dictKey: 'driverrecord:receive:type' },
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
arvattype: {
|
arvattype: {
|
||||||
@ -130,7 +133,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'dict-select',
|
widget: 'dict-select',
|
||||||
params: { dictKey: 'pay:type' },
|
params: { dictKey: 'pay:type' },
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cno: {
|
cno: {
|
||||||
@ -140,7 +143,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
allowClear: true,
|
allowClear: true,
|
||||||
asyncData: () => this.service.getCloseAccount(),
|
asyncData: () => this.service.getCloseAccount()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
arto: {
|
arto: {
|
||||||
@ -152,7 +155,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
searchDebounceTime: 300,
|
searchDebounceTime: 300,
|
||||||
searchLoadingText: '搜索中...',
|
searchLoadingText: '搜索中...',
|
||||||
allowClear: true,
|
allowClear: true,
|
||||||
onSearch: (q: any) => this.service.getEnterpriceList({ enterpriseName: q }),
|
onSearch: (q: any) => this.service.getEnterpriceList({ enterpriseName: q })
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
sts: {
|
sts: {
|
||||||
@ -164,8 +167,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
],
|
],
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
banktype: {
|
banktype: {
|
||||||
@ -178,8 +180,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
],
|
],
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
|
|
||||||
},
|
},
|
||||||
default: ''
|
default: ''
|
||||||
},
|
},
|
||||||
@ -188,8 +189,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'sl-from-to-search',
|
widget: 'sl-from-to-search',
|
||||||
format: 'yyyy-MM-dd',
|
format: 'yyyy-MM-dd'
|
||||||
|
|
||||||
} as SFDateWidgetSchema
|
} as SFDateWidgetSchema
|
||||||
},
|
},
|
||||||
createTime: {
|
createTime: {
|
||||||
@ -197,14 +197,14 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'sl-from-to-search',
|
widget: 'sl-from-to-search',
|
||||||
format: 'yyyy-MM-dd',
|
format: 'yyyy-MM-dd'
|
||||||
} as SFDateWidgetSchema
|
} as SFDateWidgetSchema
|
||||||
},
|
},
|
||||||
billHCode: {
|
billHCode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '订单号',
|
title: '订单号',
|
||||||
ui: {
|
ui: {
|
||||||
placeholder: '请输入',
|
placeholder: '请输入'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// orderS3: {
|
// orderS3: {
|
||||||
@ -222,7 +222,7 @@ export class ReceivableOrderComponent extends BasicTableComponent implements OnI
|
|||||||
title: '核销备注',
|
title: '核销备注',
|
||||||
ui: {
|
ui: {
|
||||||
autocomplete: 'off',
|
autocomplete: 'off',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -41,9 +41,10 @@
|
|||||||
{{ item.orderRefundCode }} <br> {{ item.refundStatusLabel }}
|
{{ item.orderRefundCode }} <br> {{ item.refundStatusLabel }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="refundAmount" let-item let-index="index" let-column="column">
|
<ng-template st-row="refundAmount" let-item let-index="index" let-column="column">
|
||||||
<ng-container *ngFor="let cost of item.billRefundDetailVOS">
|
<p *ngFor="let cost of item.billRefundDetailVOS"
|
||||||
{{cost.costName}}:{{ cost.refundAmount |currency }}<br>
|
style="display: flex;align-items: center;justify-content: space-between;margin: 0;">
|
||||||
</ng-container>
|
<label> {{cost.costName}}:</label><label>{{ cost.refundAmount |currency }}</label>
|
||||||
|
</p>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="billRefundPaymentVOS" let-item let-index="index" let-column="column">
|
<ng-template st-row="billRefundPaymentVOS" let-item let-index="index" let-column="column">
|
||||||
<ng-container *ngFor="let bill of item.billRefundPaymentVOS">
|
<ng-container *ngFor="let bill of item.billRefundPaymentVOS">
|
||||||
|
|||||||
@ -174,6 +174,13 @@ export class RefundRecordComponent extends BasicTableComponent implements OnInit
|
|||||||
placeholder: '请输入'
|
placeholder: '请输入'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
captainName: {
|
||||||
|
type: 'string',
|
||||||
|
title: '收款人',
|
||||||
|
ui: {
|
||||||
|
placeholder: '请输入'
|
||||||
|
}
|
||||||
|
},
|
||||||
enterpriseProjectName: {
|
enterpriseProjectName: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '所属项目',
|
title: '所属项目',
|
||||||
@ -226,6 +233,14 @@ export class RefundRecordComponent extends BasicTableComponent implements OnInit
|
|||||||
{ title: '退款单号', render: 'orderRefundCode', width: 190 },
|
{ title: '退款单号', render: 'orderRefundCode', width: 190 },
|
||||||
{ title: '退款类型', index: 'refundTypeLabel', width: 140 },
|
{ title: '退款类型', index: 'refundTypeLabel', width: 140 },
|
||||||
{ title: '退款金额', render: 'refundAmount', className: 'text-right', width: 180 },
|
{ title: '退款金额', render: 'refundAmount', className: 'text-right', width: 180 },
|
||||||
|
{
|
||||||
|
title: '合计金额',
|
||||||
|
index: 'refundAmount',
|
||||||
|
width: 150,
|
||||||
|
type: 'widget',
|
||||||
|
className: 'text-right',
|
||||||
|
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.refundAmount }) }
|
||||||
|
},
|
||||||
{ title: '退款时间', index: 'refundExecuteTime', width: 170 },
|
{ title: '退款时间', index: 'refundExecuteTime', width: 170 },
|
||||||
{ title: '货主', index: 'enterpriseInfoName', width: 150 },
|
{ title: '货主', index: 'enterpriseInfoName', width: 150 },
|
||||||
{ title: '所属项目', index: 'enterpriseProjectName', width: 140 },
|
{ title: '所属项目', index: 'enterpriseProjectName', width: 140 },
|
||||||
|
|||||||
@ -27,6 +27,8 @@
|
|||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
|
||||||
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
|
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
|
||||||
|
<button nz-button nzDanger [disabled]="service.http.loading" (click)="exprot()" acl
|
||||||
|
[acl-ability]="['FINANCIAL-VOUCHER-export']">导出</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -61,6 +61,11 @@ export class VoucherManagementComponent extends BasicTableComponent {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 导出
|
||||||
|
exprot() {
|
||||||
|
this.service.exportStart({ ...this.sf?.value, pageSize: -1 }, this.service.$api_get_fico_vch_export);
|
||||||
|
}
|
||||||
|
|
||||||
private initSF(): SFSchema {
|
private initSF(): SFSchema {
|
||||||
return {
|
return {
|
||||||
properties: {
|
properties: {
|
||||||
|
|||||||
@ -1,3 +1,13 @@
|
|||||||
|
<!--
|
||||||
|
* @Description :
|
||||||
|
* @Version : 1.0
|
||||||
|
* @Author : Shiming
|
||||||
|
* @Date : 2022-04-28 20:27:07
|
||||||
|
* @LastEditors : Shiming
|
||||||
|
* @LastEditTime : 2022-05-07 16:22:32
|
||||||
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\voucher-summary\\voucher-summary.component.html
|
||||||
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
|
-->
|
||||||
<!-- <page-header-wrapper [title]="'凭证汇总'">
|
<!-- <page-header-wrapper [title]="'凭证汇总'">
|
||||||
</page-header-wrapper>
|
</page-header-wrapper>
|
||||||
|
|
||||||
@ -29,7 +39,8 @@
|
|||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
|
||||||
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
|
[acl-ability]="['FINANCIAL-VOUCHER-list']">筛选</button>
|
||||||
<button nz-button nzDanger (click)='exportList()'> 导出</button>
|
<button nz-button nzDanger acl
|
||||||
|
[acl-ability]="['FINANCIAL-VOUCHER-SUMMARY-export']" (click)='exportList()'> 导出</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<st #st [data]="service.$api_get_fico_vch_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
<st #st [data]="service.$api_get_fico_vch_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
||||||
|
|||||||
@ -59,7 +59,9 @@ export class WithdrawalsRecordComponent extends BasicTableComponent {
|
|||||||
};
|
};
|
||||||
|
|
||||||
afterRes = (data: any[], rawData?: any) => {
|
afterRes = (data: any[], rawData?: any) => {
|
||||||
data = data.map(node => ({ ...node, disabled: node.refundStatus !== '1' }));
|
data = data.map(node => ({ ...node,
|
||||||
|
disabled: node.refundStatus !== '1'
|
||||||
|
}));
|
||||||
return data;
|
return data;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -83,6 +83,8 @@ export class FreightAccountService extends ShipperBaseService {
|
|||||||
|
|
||||||
// 查询费用单抬头
|
// 查询费用单抬头
|
||||||
$api_get_cost_page = '/api/fcc/ficoFeeH/list/page';
|
$api_get_cost_page = '/api/fcc/ficoFeeH/list/page';
|
||||||
|
// 导出费用单列表数据
|
||||||
|
$api_get_cost_page_export = '/api/fcc/ficoFeeH/asyncExport';
|
||||||
// 根据费用头ID查询费用单及开票明细
|
// 根据费用头ID查询费用单及开票明细
|
||||||
$api_get_cost_detail = '/api/fcc/ficoFeeL/detail';
|
$api_get_cost_detail = '/api/fcc/ficoFeeL/detail';
|
||||||
// 费用关联的应收核销明细
|
// 费用关联的应收核销明细
|
||||||
@ -90,6 +92,8 @@ export class FreightAccountService extends ShipperBaseService {
|
|||||||
|
|
||||||
// 查询应收核销抬头
|
// 查询应收核销抬头
|
||||||
$api_get_fico_page = '/api/fcc/ficoAhxH/list/page';
|
$api_get_fico_page = '/api/fcc/ficoAhxH/list/page';
|
||||||
|
// 应收核销列表数据导出
|
||||||
|
$api_get_fico_page_export = '/api/fcc/ficoAhxH/asyncExport';
|
||||||
// 应收核销汇总
|
// 应收核销汇总
|
||||||
$api_get_fico_sum = '/api/fcc/ficoAhxH/getSum';
|
$api_get_fico_sum = '/api/fcc/ficoAhxH/getSum';
|
||||||
// 获取应收核销抬头
|
// 获取应收核销抬头
|
||||||
@ -99,6 +103,8 @@ export class FreightAccountService extends ShipperBaseService {
|
|||||||
|
|
||||||
// 查询应付核销抬头
|
// 查询应付核销抬头
|
||||||
$api_get_fico_ph_page = '/api/fcc/ficoPhxH/list/page';
|
$api_get_fico_ph_page = '/api/fcc/ficoPhxH/list/page';
|
||||||
|
// 应付核销列表数据导出
|
||||||
|
$api_get_fico_ph_page_export = '/api/fcc/ficoPhxH/asyncExport';
|
||||||
// 应付核销汇总
|
// 应付核销汇总
|
||||||
$api_get_fico_ph_sum = '/api/fcc/ficoPhxH/getSum';
|
$api_get_fico_ph_sum = '/api/fcc/ficoPhxH/getSum';
|
||||||
// 获取应付核销抬头
|
// 获取应付核销抬头
|
||||||
@ -108,6 +114,8 @@ export class FreightAccountService extends ShipperBaseService {
|
|||||||
|
|
||||||
// 查询总账凭证表
|
// 查询总账凭证表
|
||||||
$api_get_fico_vch_page = '/api/fcc/ficoVcH/list/page';
|
$api_get_fico_vch_page = '/api/fcc/ficoVcH/list/page';
|
||||||
|
// 导出总账凭证列表数据
|
||||||
|
$api_get_fico_vch_export = '/api/fcc/ficoVcH/asyncExport';
|
||||||
// 导出总账凭证表
|
// 导出总账凭证表
|
||||||
$api_export_fico_vch_page = '/api/fcc/ficoVcH/reportVchListPage';
|
$api_export_fico_vch_page = '/api/fcc/ficoVcH/reportVchListPage';
|
||||||
// 获取总账凭证表详情信息
|
// 获取总账凭证表详情信息
|
||||||
@ -115,6 +123,8 @@ export class FreightAccountService extends ShipperBaseService {
|
|||||||
|
|
||||||
// 查询付款单抬头
|
// 查询付款单抬头
|
||||||
$api_get_payment_page = '/api/fcc/ficoPayH/listFicoPayHPage';
|
$api_get_payment_page = '/api/fcc/ficoPayH/listFicoPayHPage';
|
||||||
|
// 付款单列表数据导出
|
||||||
|
$api_get_payment_page_export = '/api/fcc/ficoPayH/asyncExport';
|
||||||
// 查询付款单明细
|
// 查询付款单明细
|
||||||
$api_get_payment_detail = '/api/fcc/ficoPayL/list/page';
|
$api_get_payment_detail = '/api/fcc/ficoPayL/list/page';
|
||||||
// 付款单抬头信息
|
// 付款单抬头信息
|
||||||
@ -122,6 +132,8 @@ export class FreightAccountService extends ShipperBaseService {
|
|||||||
|
|
||||||
// 查询收款单抬头
|
// 查询收款单抬头
|
||||||
$api_get_receipt_page = '/api/fcc/ficoBrmH/list/page';
|
$api_get_receipt_page = '/api/fcc/ficoBrmH/list/page';
|
||||||
|
// 收款单列表数据导出
|
||||||
|
$api_get_receipt_page_export = '/api/fcc/ficoBrmH/asyncExport';
|
||||||
// 收款单抬头信息
|
// 收款单抬头信息
|
||||||
$api_get_receipt_header = '/api/fcc/ficoBrmH/get';
|
$api_get_receipt_header = '/api/fcc/ficoBrmH/get';
|
||||||
// 获取收款单抬头
|
// 获取收款单抬头
|
||||||
|
|||||||
@ -8,15 +8,7 @@
|
|||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\insurance-management\\components\\set\\set.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\insurance-management\\components\\set\\set.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
import { Router } from '@angular/router';
|
|
||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
|
||||||
import { STColumn } from '@delon/abc/st';
|
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { InsuranceManagementService } from '../../services/insurance-management.service';
|
|
||||||
import { NzCardComponent } from 'ng-zorro-antd/card';
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-insurance-management-set',
|
selector: 'app-insurance-management-set',
|
||||||
templateUrl: './set.component.html',
|
templateUrl: './set.component.html',
|
||||||
@ -24,11 +16,7 @@ import { NzCardComponent } from 'ng-zorro-antd/card';
|
|||||||
})
|
})
|
||||||
export class insuranceManagementSetComponent implements OnInit {
|
export class insuranceManagementSetComponent implements OnInit {
|
||||||
|
|
||||||
constructor(
|
constructor() {
|
||||||
private route: ActivatedRoute,
|
|
||||||
private msgSrv: NzMessageService,
|
|
||||||
private service: InsuranceManagementService,
|
|
||||||
) {
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -9,32 +9,19 @@
|
|||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
|
||||||
import {InterfaceDockingService} from '../../services/interface-docking.service';
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-interface-docking-set',
|
selector: 'app-interface-docking-set',
|
||||||
templateUrl: './set.component.html',
|
templateUrl: './set.component.html',
|
||||||
styleUrls: ['./set.component.less']
|
styleUrls: ['./set.component.less']
|
||||||
})
|
})
|
||||||
export class interfaceDockingSetComponent implements OnInit {
|
export class interfaceDockingSetComponent implements OnInit {
|
||||||
|
constructor() {}
|
||||||
constructor(
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private msgSrv: NzMessageService,
|
|
||||||
private service: InterfaceDockingService,
|
|
||||||
) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initData()
|
this.initData();
|
||||||
}
|
|
||||||
initData() {
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
initData() {}
|
||||||
goBack() {
|
goBack() {
|
||||||
window.history.go(-1);
|
window.history.go(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -112,7 +112,6 @@ export class OrderManagementBulkDetailChangeComponent implements OnInit {
|
|||||||
public shipperservice: ShipperBaseService,
|
public shipperservice: ShipperBaseService,
|
||||||
fb: FormBuilder,
|
fb: FormBuilder,
|
||||||
private envSrv: EAEnvironmentService,
|
private envSrv: EAEnvironmentService,
|
||||||
private ar: ActivatedRoute
|
|
||||||
) {
|
) {
|
||||||
this.validateForm1 = fb.group({
|
this.validateForm1 = fb.group({
|
||||||
loadTime: [null, []],
|
loadTime: [null, []],
|
||||||
|
|||||||
@ -88,7 +88,6 @@ export class OrderManagementBulkeDetailComponent implements OnInit {
|
|||||||
) {}
|
) {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
console.log(this.route?.snapshot?.queryParams?.sts);
|
|
||||||
this.initData();
|
this.initData();
|
||||||
this.getTrajectory();
|
this.getTrajectory();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -31,7 +31,8 @@
|
|||||||
<div class="tab_header">
|
<div class="tab_header">
|
||||||
<label class="page_title">
|
<label class="page_title">
|
||||||
<label class="driver">|</label>
|
<label class="driver">|</label>
|
||||||
大宗订单</label>
|
大宗订单</label
|
||||||
|
>
|
||||||
<nz-tabset (nzSelectedIndexChange)="selectChange($event)" [nzTabBarExtraContent]="extraTemplate">
|
<nz-tabset (nzSelectedIndexChange)="selectChange($event)" [nzTabBarExtraContent]="extraTemplate">
|
||||||
<nz-tab [nzTitle]="'全部(' + tabs?.totalCount + ')'"></nz-tab>
|
<nz-tab [nzTitle]="'全部(' + tabs?.totalCount + ')'"></nz-tab>
|
||||||
<nz-tab [nzTitle]="'待接单(' + tabs?.receivedQuantity + ')'"></nz-tab>
|
<nz-tab [nzTitle]="'待接单(' + tabs?.receivedQuantity + ')'"></nz-tab>
|
||||||
@ -44,10 +45,17 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<st #st [bordered]="true" [scroll]="{ x: '2000px',y:scrollY }" [data]="service.$api_get_listBulkPage"
|
<st
|
||||||
[columns]="columns" [req]="{ process: beforeReq }"
|
#st
|
||||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
|
[bordered]="true"
|
||||||
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [loading]="false">
|
[scroll]="{ x: '2000px', y: scrollY }"
|
||||||
|
[data]="service.$api_get_listBulkPage"
|
||||||
|
[columns]="columns"
|
||||||
|
[req]="{ process: beforeReq }"
|
||||||
|
[res]="{ reName: { list: 'data.records', total: 'data.total' }, process: afterRes }"
|
||||||
|
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
||||||
|
[loading]="false"
|
||||||
|
>
|
||||||
<ng-template st-row="freightPrice" let-item let-index="index">
|
<ng-template st-row="freightPrice" let-item let-index="index">
|
||||||
{{ item.freightPrice | currency }}
|
{{ item.freightPrice | currency }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -56,19 +64,19 @@
|
|||||||
<div *ngIf="item?.unloadTime">卸 | {{ item?.unloadTime }}</div>
|
<div *ngIf="item?.unloadTime">卸 | {{ item?.unloadTime }}</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="driverName" let-item let-index="index">
|
<ng-template st-row="driverName" let-item let-index="index">
|
||||||
<div> {{ item?.driverName }}{{ item?.driverPhone ? "/" + item?.driverPhone : '' }}{{ item?.carNo ? "/" +
|
<div> {{ item?.driverName }}{{ item?.driverPhone ? '/' + item?.driverPhone : '' }}{{ item?.carNo ? '/' + item?.carNo : '' }} </div>
|
||||||
item?.carNo : ''}} </div>
|
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="settlementWeight" let-item let-index="index">
|
<ng-template st-row="settlementWeight" let-item let-index="index">
|
||||||
<div> {{ item.settlementWeight ? item.settlementWeight + '吨/ ': ''}} {{ item.settlementVolume ?
|
<div>
|
||||||
item.settlementVolume + '方 ': ''}}</div>
|
{{ item.settlementWeight ? item.settlementWeight + '吨/ ' : '' }}
|
||||||
|
{{ item.settlementVolume ? item.settlementVolume + '方 ' : '' }}</div
|
||||||
|
>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="payeeName" let-item let-index="index">
|
<ng-template st-row="payeeName" let-item let-index="index">
|
||||||
<div *ngIf="item.payeeName !== item.driverName"> {{ item?.payeeName }}{{ item?.payeePhone ? "/" +
|
<div *ngIf="item.payeeName !== item.driverName"> {{ item?.payeeName }}{{ item?.payeePhone ? '/' + item?.payeePhone : '' }} </div>
|
||||||
item?.payeePhone : '' }} </div>
|
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="createUserName" let-item let-index="index">
|
<ng-template st-row="createUserName" let-item let-index="index">
|
||||||
<div> {{ item?.createUserName }}{{ item?.createUserPhone ? "/" + item?.createUserPhone : '' }} </div>
|
<div> {{ item?.createUserName }}{{ item?.createUserPhone ? '/' + item?.createUserPhone : '' }} </div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="billCode" let-item let-index="index">
|
<ng-template st-row="billCode" let-item let-index="index">
|
||||||
<a [routerLink]="'bulk-detail/' + item.id">{{ item.billCode }}</a>
|
<a [routerLink]="'bulk-detail/' + item.id">{{ item.billCode }}</a>
|
||||||
@ -91,8 +99,7 @@
|
|||||||
<div *ngIf="item.mybidDetailInfo.length > 0">
|
<div *ngIf="item.mybidDetailInfo.length > 0">
|
||||||
<p *ngFor="let data of item.mybidDetailInfo">
|
<p *ngFor="let data of item.mybidDetailInfo">
|
||||||
<span *ngIf="data.expenseCode !== 'FL'">{{ data.expenseName }}:{{ data.price | currency }}</span>
|
<span *ngIf="data.expenseCode !== 'FL'">{{ data.expenseName }}:{{ data.price | currency }}</span>
|
||||||
<span *ngIf="data.expenseCode === 'FL'">{{ data.expenseName }}:{{ (data.price * 100).toFixed(2) + '%'
|
<span *ngIf="data.expenseCode === 'FL'">{{ data.expenseName }}:{{ (data.price * 100).toFixed(2) + '%' }}</span>
|
||||||
}}</span>
|
|
||||||
<span *ngIf="data.paymentStatusLabel" style="color: #f59a63">{{ data.paymentStatusLabel }}</span>
|
<span *ngIf="data.paymentStatusLabel" style="color: #f59a63">{{ data.paymentStatusLabel }}</span>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
@ -101,13 +108,25 @@
|
|||||||
</div>
|
</div>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisible" [nzWidth]="600" [nzFooter]="nzModalFooter" nzTitle="运费变更记录" (nzOnOk)="handleOK()"
|
<nz-modal
|
||||||
(nzOnCancel)="handleCancel('0')">
|
[(nzVisible)]="isVisible"
|
||||||
|
[nzWidth]="600"
|
||||||
|
[nzFooter]="nzModalFooter"
|
||||||
|
nzTitle="运费变更记录"
|
||||||
|
(nzOnOk)="handleOK()"
|
||||||
|
(nzOnCancel)="handleCancel('0')"
|
||||||
|
>
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
<st #stFloat size="small" [bordered]="true" [data]="service.$api_get_listChangeApply" [columns]="columnsFloat"
|
<st
|
||||||
[req]="{ process: beforeReq }"
|
#stFloat
|
||||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
|
size="small"
|
||||||
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }">
|
[bordered]="true"
|
||||||
|
[data]="service.$api_get_listChangeApply"
|
||||||
|
[columns]="columnsFloat"
|
||||||
|
[req]="{ process: beforeReq }"
|
||||||
|
[res]="{ reName: { list: 'data.records', total: 'data.total' }, process: afterRes }"
|
||||||
|
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
||||||
|
>
|
||||||
<ng-template st-row="order" let-item let-index="index">
|
<ng-template st-row="order" let-item let-index="index">
|
||||||
{{ index + 1 }}
|
{{ index + 1 }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -127,8 +146,14 @@
|
|||||||
</ng-template>
|
</ng-template>
|
||||||
</nz-modal>
|
</nz-modal>
|
||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisibleView" [nzWidth]="600" [nzFooter]="nzModalFooterview" nzTitle="查看"
|
<nz-modal
|
||||||
(nzOnOk)="handleOK()" (nzOnCancel)="handleCancel('1')">
|
[(nzVisible)]="isVisibleView"
|
||||||
|
[nzWidth]="600"
|
||||||
|
[nzFooter]="nzModalFooterview"
|
||||||
|
nzTitle="查看"
|
||||||
|
(nzOnOk)="handleOK()"
|
||||||
|
(nzOnCancel)="handleCancel('1')"
|
||||||
|
>
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
<sf #sfView [schema]="schemaView" [ui]="uiView" [formData]="ViewCause" [compact]="true" [button]="'none'">
|
<sf #sfView [schema]="schemaView" [ui]="uiView" [formData]="ViewCause" [compact]="true" [button]="'none'">
|
||||||
<ng-template sf-template="no" let-me let-ui="uiView" let-schema="schemaView">
|
<ng-template sf-template="no" let-me let-ui="uiView" let-schema="schemaView">
|
||||||
@ -138,21 +163,30 @@
|
|||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</sf>
|
</sf>
|
||||||
<st #stFloatView multiSort size="small" [bordered]="true" [data]="service.$api_getChangeRecordBulkDetail"
|
<st
|
||||||
|
#stFloatView
|
||||||
|
multiSort
|
||||||
|
size="small"
|
||||||
|
[bordered]="true"
|
||||||
|
[data]="service.$api_getChangeRecordBulkDetail"
|
||||||
[columns]="columnsFloatView"
|
[columns]="columnsFloatView"
|
||||||
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeViewParams }"
|
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: changeViewParams }"
|
||||||
[res]="{ reName: { list: 'data.list', total: 'data.total' } }">
|
[res]="{ reName: { list: 'data.list', total: 'data.total' } }"
|
||||||
|
>
|
||||||
<ng-template st-row="amountBeforeChange" let-item let-index="index">
|
<ng-template st-row="amountBeforeChange" let-item let-index="index">
|
||||||
{{ item.amountBeforeChange | currency }}
|
{{ item.amountBeforeChange | currency }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="amountchangeValue" let-item let-index="index"> ¥{{ item.amountchangeValue | number: '0.2-2'
|
<ng-template st-row="amountchangeValue" let-item let-index="index"> ¥{{ item.amountchangeValue | number: '0.2-2' }} </ng-template>
|
||||||
}} </ng-template>
|
|
||||||
<ng-template st-row="amountAfterChange" let-item let-index="index">
|
<ng-template st-row="amountAfterChange" let-item let-index="index">
|
||||||
{{ item.amountAfterChange | currency }}
|
{{ item.amountAfterChange | currency }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</st>
|
</st>
|
||||||
<div><span>变更原因:{{ ViewCause?.changeCause }}</span></div>
|
<div
|
||||||
<div><span>拒绝原因:{{ ViewCause?.refuseCause }}</span></div>
|
><span>变更原因:{{ ViewCause?.changeCause }}</span></div
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
><span>拒绝原因:{{ ViewCause?.refuseCause }}</span></div
|
||||||
|
>
|
||||||
<div><span>注:附加费依据调整后的运输费用重新计算</span></div>
|
<div><span>注:附加费依据调整后的运输费用重新计算</span></div>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #nzModalFooterview>
|
<ng-template #nzModalFooterview>
|
||||||
@ -161,8 +195,13 @@
|
|||||||
</ng-template>
|
</ng-template>
|
||||||
</nz-modal>
|
</nz-modal>
|
||||||
|
|
||||||
<nz-modal [(nzVisible)]="isVisibleEvaluate" [nzWidth]="600" [nzFooter]="nzModalFooterEvaluate" (nzOnOk)="handleOK()"
|
<nz-modal
|
||||||
(nzOnCancel)="handleCancel('2')">
|
[(nzVisible)]="isVisibleEvaluate"
|
||||||
|
[nzWidth]="600"
|
||||||
|
[nzFooter]="nzModalFooterEvaluate"
|
||||||
|
(nzOnOk)="handleOK()"
|
||||||
|
(nzOnCancel)="handleCancel('2')"
|
||||||
|
>
|
||||||
<ng-container *nzModalContent>
|
<ng-container *nzModalContent>
|
||||||
<nz-tabset>
|
<nz-tabset>
|
||||||
<nz-tab nzTitle="货主评价">
|
<nz-tab nzTitle="货主评价">
|
||||||
@ -191,20 +230,28 @@
|
|||||||
<ng-template #enable>
|
<ng-template #enable>
|
||||||
<div class="ant-popover-message">
|
<div class="ant-popover-message">
|
||||||
<i nz-icon nzType="info-circle" nzTheme="fill"></i>
|
<i nz-icon nzType="info-circle" nzTheme="fill"></i>
|
||||||
<div class="ant-popover-message-title ng-star-inserted self-ant-popover-title" style="font-size: 16px">已选择{{
|
<div class="ant-popover-message-title ng-star-inserted self-ant-popover-title" style="font-size: 16px"
|
||||||
selectedRows?.length || 0 }}条订单,确认批量签收吗?
|
>已选择{{ selectedRows?.length || 0 }}条订单,确认批量签收吗?
|
||||||
</div>
|
</div>
|
||||||
<div class="ant-popover-message-title ng-star-inserted"> 签收后不可再修改运费,请确保运费等信息准确无误后,再进行签收。 </div>
|
<div class="ant-popover-message-title ng-star-inserted"> 签收后不可再修改运费,请确保运费等信息准确无误后,再进行签收。 </div>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template #extraTemplate>
|
<ng-template #extraTemplate>
|
||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="loading" (click)="openDrawer()" acl
|
<button nz-button nzDanger [nzLoading]="loading" (click)="openDrawer()" acl [acl-ability]="['ORDER-BULK-search']">筛选</button>
|
||||||
[acl-ability]="['ORDER-BULK-search']">筛选</button>
|
|
||||||
<button nz-button nzDanger [disabled]="loading" (click)="exprot()">导出</button>
|
<button nz-button nzDanger [disabled]="loading" (click)="exprot()">导出</button>
|
||||||
<button *ngIf="resourceStatus == 4" nz-button nzType="primary" nzGhost nz-popconfirm [nzPopconfirmTitle]="enable"
|
<button
|
||||||
(nzOnConfirm)="userAction()" nzPopconfirmPlacement="bottomRight" acl
|
*ngIf="resourceStatus == 4"
|
||||||
[acl-ability]="['ORDER-BULK-batchSignBulkOrder']">
|
nz-button
|
||||||
|
nzType="primary"
|
||||||
|
nzGhost
|
||||||
|
nz-popconfirm
|
||||||
|
[nzPopconfirmTitle]="enable"
|
||||||
|
(nzOnConfirm)="userAction()"
|
||||||
|
nzPopconfirmPlacement="bottomRight"
|
||||||
|
acl
|
||||||
|
[acl-ability]="['ORDER-BULK-batchSignBulkOrder']"
|
||||||
|
>
|
||||||
批量签收
|
批量签收
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -824,4 +824,5 @@ export class OrderManagementBulkComponent extends BasicTableComponent implements
|
|||||||
exprot() {
|
exprot() {
|
||||||
this.service.exportStart({ ...this.reqParams, pageSize: -1 }, this.service.$api_get_asyncExportBulkList);
|
this.service.exportStart({ ...this.reqParams, pageSize: -1 }, this.service.$api_get_asyncExportBulkList);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -37,8 +37,6 @@ export class OrderManagementComplaintDetailComponent implements OnInit {
|
|||||||
if (this.id)
|
if (this.id)
|
||||||
{
|
{
|
||||||
this.getDetail(this.id);
|
this.getDetail(this.id);
|
||||||
console.log(this.ar.snapshot.queryParams.sts);
|
|
||||||
|
|
||||||
this.initSF();
|
this.initSF();
|
||||||
this.initSTAudit()
|
this.initSTAudit()
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-01-12 10:52:50
|
* @Date : 2022-01-12 10:52:50
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-04-29 10:29:12
|
* @LastEditTime : 2022-05-10 13:55:39
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -39,10 +39,17 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<st #st [bordered]="true" [scroll]="{ x: '2000px',y:scrollY }" [data]="service.$api_get_billExamine_page"
|
<st
|
||||||
[columns]="columns" [req]="{ process: beforeReq }"
|
#st
|
||||||
[res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
|
[bordered]="true"
|
||||||
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [loading]="false">
|
[scroll]="{ x: '2000px', y: scrollY }"
|
||||||
|
[data]="service.$api_get_billExamine_page"
|
||||||
|
[columns]="columns"
|
||||||
|
[req]="{ process: beforeReq }"
|
||||||
|
[res]="{ reName: { list: 'data.records', total: 'data.total' }, process: afterRes }"
|
||||||
|
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
|
||||||
|
[loading]="false"
|
||||||
|
>
|
||||||
<ng-template st-row="freightPrice" let-item let-index="index">
|
<ng-template st-row="freightPrice" let-item let-index="index">
|
||||||
{{ item.freightPrice | currency }}
|
{{ item.freightPrice | currency }}
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -62,8 +69,7 @@
|
|||||||
<app-imagelist style="width: 40px" [imgList]="[item.unloadingLadingBillFilePath]"> </app-imagelist>
|
<app-imagelist style="width: 40px" [imgList]="[item.unloadingLadingBillFilePath]"> </app-imagelist>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="item.unloadingPeopleVehiclesGoodsFilePath">
|
<div *ngIf="item.unloadingPeopleVehiclesGoodsFilePath">
|
||||||
<app-imagelist style="width: 40px" [imgList]="[item.unloadingPeopleVehiclesGoodsFilePath]">
|
<app-imagelist style="width: 40px" [imgList]="[item.unloadingPeopleVehiclesGoodsFilePath]"> </app-imagelist>
|
||||||
</app-imagelist>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -72,26 +78,21 @@
|
|||||||
<div *ngIf="item?.unloadingTime">卸 | {{ item?.unloadingTime }}</div>
|
<div *ngIf="item?.unloadingTime">卸 | {{ item?.unloadingTime }}</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="driverName" let-item let-index="index">
|
<ng-template st-row="driverName" let-item let-index="index">
|
||||||
<div> {{ item?.driverName }}{{ item?.driverPhone ? "/" + item?.driverPhone : ''}}{{ item?.carNo ? "/" +
|
<div> {{ item?.driverName }}{{ item?.driverPhone ? '/' + item?.driverPhone : '' }}{{ item?.carNo ? '/' +
|
||||||
item?.carNo : '' }} </div>
|
item?.carNo : '' }} </div><br />
|
||||||
</ng-template>
|
<div *ngIf="item.payeeName !== item.driverName">车队长: {{ item?.payeeName ? item?.payeeName + '/' : ''}}{{
|
||||||
<ng-template st-row="payeeName" let-item let-index="index">
|
item?.payeePhone }} </div>
|
||||||
<div> {{ item?.payeeName }}{{item?.payeePhone ? "/" + item?.payeePhone : '' }} </div>
|
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="billCode" let-item let-index="index">
|
<ng-template st-row="billCode" let-item let-index="index">
|
||||||
<!-- <div>{{ item.billCode }}</div> -->
|
<!-- <div>{{ item.billCode }}</div> -->
|
||||||
<a *ngIf="item.resourceType == '1'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{
|
<a *ngIf="item.resourceType == '1'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{ item.billCode }}</a>
|
||||||
item.billCode }}</a>
|
<a *ngIf="item.resourceType == '2'" [routerLink]="'/order-management/bulk/bulk-detail/' + item.id">{{ item.billCode }}</a>
|
||||||
<a *ngIf="item.resourceType == '2'" [routerLink]="'/order-management/bulk/bulk-detail/' + item.id">{{
|
<a *ngIf="item.resourceType == '3'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{ item.billCode }}</a>
|
||||||
item.billCode }}</a>
|
|
||||||
<a *ngIf="item.resourceType == '3'" [routerLink]="'/order-management/vehicle/vehicle-detail/' + item.id">{{
|
|
||||||
item.billCode }}</a>
|
|
||||||
<div>
|
<div>
|
||||||
<span>{{item?.billStatusLabel}}</span>
|
<span>{{ item?.billStatusLabel }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span>{{item?.resourceTypeLabel}}{{item?.serviceTypeLabel === item?.resourceTypeLabel ?
|
<span>{{ item?.resourceTypeLabel }}{{ item?.serviceTypeLabel === item?.resourceTypeLabel ? '' : item?.serviceTypeLabel }}</span>
|
||||||
'':item?.serviceTypeLabel}}</span>
|
|
||||||
</div>
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
<ng-template st-row="goodsName" let-item let-index="index">
|
<ng-template st-row="goodsName" let-item let-index="index">
|
||||||
@ -116,19 +117,17 @@
|
|||||||
|
|
||||||
<ng-template #extraTemplate>
|
<ng-template #extraTemplate>
|
||||||
<div>
|
<div>
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()" acl [acl-ability]="['ORDER-RECEIPTS-search']"
|
||||||
[acl-ability]="['ORDER-RECEIPTS-search']">筛选</button>
|
>筛选</button
|
||||||
|
>
|
||||||
<button nz-button nzDanger [disabled]="false" (click)="exprot()" acl [acl-ability]="['ORDER-RECEIPTS-export']">导出</button>
|
<button nz-button nzDanger [disabled]="false" (click)="exprot()" acl [acl-ability]="['ORDER-RECEIPTS-export']">导出</button>
|
||||||
<button nz-button nz-dropdown [nzDropdownMenu]="menu" nzPlacement="bottomLeft">
|
<button nz-button nz-dropdown [nzDropdownMenu]="menu" nzPlacement="bottomLeft">
|
||||||
更多<i nz-icon nzType="down" nzTheme="outline"></i></button>
|
更多<i nz-icon nzType="down" nzTheme="outline"></i
|
||||||
|
></button>
|
||||||
<nz-dropdown-menu #menu="nzDropdownMenu">
|
<nz-dropdown-menu #menu="nzDropdownMenu">
|
||||||
<ul nz-menu>
|
<ul nz-menu>
|
||||||
<li nz-menu-item (click)="sign('1')" acl [acl-ability]="['ORDER-RECEIPTS-billAuditPassBatch']">
|
<li nz-menu-item (click)="sign('1')" acl [acl-ability]="['ORDER-RECEIPTS-billAuditPassBatch']"> 批量通过 </li>
|
||||||
批量通过
|
<li nz-menu-item (click)="sign1('1')" acl [acl-ability]="['ORDER-RECEIPTS- electronicBilling']"> 批量生成电子单据 </li>
|
||||||
</li>
|
|
||||||
<li nz-menu-item (click)="sign1('1')" acl [acl-ability]="['ORDER-RECEIPTS- electronicBilling']">
|
|
||||||
批量生成电子单据
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nz-dropdown-menu>
|
</nz-dropdown-menu>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -127,7 +127,6 @@ export class OrderManagementReceiptsAuditComponent extends BasicTableComponent i
|
|||||||
this.initST();
|
this.initST();
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.st.load();
|
this.st.load();
|
||||||
this.getGoodsSourceStatistical();
|
|
||||||
}, 500);
|
}, 500);
|
||||||
}
|
}
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
@ -337,13 +336,6 @@ export class OrderManagementReceiptsAuditComponent extends BasicTableComponent i
|
|||||||
index: 'driverName',
|
index: 'driverName',
|
||||||
render: 'driverName'
|
render: 'driverName'
|
||||||
},
|
},
|
||||||
{
|
|
||||||
title: '车队长',
|
|
||||||
className: 'text-left',
|
|
||||||
width: '180px',
|
|
||||||
index: 'payeeName',
|
|
||||||
render: 'payeeName'
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
title: '装卸货时间',
|
title: '装卸货时间',
|
||||||
width: '200px',
|
width: '200px',
|
||||||
|
|||||||
@ -101,7 +101,6 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
|
|||||||
private modalService: NzModalService,
|
private modalService: NzModalService,
|
||||||
private amapService: AmapService,
|
private amapService: AmapService,
|
||||||
public shipperservice: ShipperBaseService,
|
public shipperservice: ShipperBaseService,
|
||||||
private ar: ActivatedRoute,
|
|
||||||
fb: FormBuilder,
|
fb: FormBuilder,
|
||||||
private envSrv: EAEnvironmentService
|
private envSrv: EAEnvironmentService
|
||||||
) {
|
) {
|
||||||
@ -566,7 +565,7 @@ export class OrderManagementVehicleDetailChangeComponent implements OnInit {
|
|||||||
this.service.request(this.service.$api_set_modifyWholeOrder, params).subscribe((res: any) => {
|
this.service.request(this.service.$api_set_modifyWholeOrder, params).subscribe((res: any) => {
|
||||||
if (res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('修改成功!');
|
this.service.msgSrv.success('修改成功!');
|
||||||
this.router.navigate(['/order-management/vehicle/vehicle-detail/', this.id], { relativeTo: this.ar });
|
this.router.navigate(['/order-management/vehicle/vehicle-detail/', this.id], { relativeTo: this.route });
|
||||||
} else {
|
} else {
|
||||||
this.service.msgSrv.error(res?.msg);
|
this.service.msgSrv.error(res?.msg);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -72,7 +72,6 @@ export class OrderManagementVehicleComponent extends BasicTableComponent impleme
|
|||||||
private modal: NzModalService,
|
private modal: NzModalService,
|
||||||
public shipperservice: ShipperBaseService,
|
public shipperservice: ShipperBaseService,
|
||||||
public router: Router,
|
public router: Router,
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public searchDrawerService: SearchDrawerService
|
public searchDrawerService: SearchDrawerService
|
||||||
) {
|
) {
|
||||||
super(searchDrawerService);
|
super(searchDrawerService);
|
||||||
|
|||||||
@ -47,7 +47,9 @@ export class PartnerAccountManagementWithdrawalsRecordComponent implements OnIni
|
|||||||
};
|
};
|
||||||
|
|
||||||
afterRes = (data: any[], rawData?: any) => {
|
afterRes = (data: any[], rawData?: any) => {
|
||||||
data = data.map(node => ({ ...node, disabled: node.refundStatus !== '1' }));
|
data = data.map(node => ({ ...node,
|
||||||
|
disabled: node.refundStatus !== '1'
|
||||||
|
}));
|
||||||
return data;
|
return data;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -74,16 +76,19 @@ export class PartnerAccountManagementWithdrawalsRecordComponent implements OnIni
|
|||||||
const stList = this.st.list;
|
const stList = this.st.list;
|
||||||
stList.forEach(item => {
|
stList.forEach(item => {
|
||||||
if (!item.checked) {
|
if (!item.checked) {
|
||||||
|
|
||||||
const index = this.selectedRows.findIndex(_item => item.id === _item.id);
|
const index = this.selectedRows.findIndex(_item => item.id === _item.id);
|
||||||
if (index !== -1) this.selectedRows.splice(index, 1);
|
if (index !== -1) this.selectedRows.splice(index, 1);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
let totalCallNo = 0;
|
let totalCallNo = 0;
|
||||||
|
this.totalCallNo = 0;
|
||||||
this.selectedRows.forEach((item => {
|
this.selectedRows.forEach((item => {
|
||||||
totalCallNo = new Big(this.totalCallNo).plus(item?.amount).parse();
|
totalCallNo = new Big(this.totalCallNo).plus(item?.amount).parse();
|
||||||
}));
|
|
||||||
this.totalCallNo = totalCallNo;
|
this.totalCallNo = totalCallNo;
|
||||||
|
}));
|
||||||
|
|
||||||
} else if (e.type === 'loaded') {
|
} else if (e.type === 'loaded') {
|
||||||
// 页面加载时勾选
|
// 页面加载时勾选
|
||||||
(e?.loaded || []).forEach((r) => {
|
(e?.loaded || []).forEach((r) => {
|
||||||
|
|||||||
@ -1,9 +1,7 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort } from '@shared';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { AdviceFeedbackService } from '../../services/advice-feedback.service';
|
import { AdviceFeedbackService } from '../../services/advice-feedback.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -20,15 +18,10 @@ export class ParterAdviceFeedbackListComponent implements OnInit {
|
|||||||
@ViewChild('sf', { static: false })
|
@ViewChild('sf', { static: false })
|
||||||
sf!: SFComponent;
|
sf!: SFComponent;
|
||||||
_$expand = false;
|
_$expand = false;
|
||||||
selectedIndex = 0;
|
selectedIndex = 0;
|
||||||
|
|
||||||
data=[{name1:1111}]
|
data = [{ name1: 1111 }];
|
||||||
constructor(
|
constructor(public router: Router, public service: AdviceFeedbackService) {}
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: AdviceFeedbackService,
|
|
||||||
private modalService: NzModalService
|
|
||||||
) {}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询参数
|
* 查询参数
|
||||||
@ -36,19 +29,19 @@ export class ParterAdviceFeedbackListComponent implements OnInit {
|
|||||||
get reqParams() {
|
get reqParams() {
|
||||||
return { ...this.sf?.value };
|
return { ...this.sf?.value };
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 查询字段个数
|
* 查询字段个数
|
||||||
*/
|
*/
|
||||||
get queryFieldCount(): number {
|
get queryFieldCount(): number {
|
||||||
return Object.keys(this.schema?.properties || {}).length;
|
return Object.keys(this.schema?.properties || {}).length;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 伸缩查询条件
|
* 伸缩查询条件
|
||||||
*/
|
*/
|
||||||
expandToggle(): void {
|
expandToggle(): void {
|
||||||
this._$expand = !this._$expand;
|
this._$expand = !this._$expand;
|
||||||
this.sf?.setValue('/_$expand', this._$expand);
|
this.sf?.setValue('/_$expand', this._$expand);
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -89,7 +82,7 @@ export class ParterAdviceFeedbackListComponent implements OnInit {
|
|||||||
_$expand: (value: boolean) => value
|
_$expand: (value: boolean) => value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
@ -139,12 +132,12 @@ export class ParterAdviceFeedbackListComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '详情',
|
text: '详情',
|
||||||
click: (_record, _modal, _instance) => this.partnerView(_record),
|
click: (_record, _modal, _instance) => this.partnerView(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '处理',
|
text: '处理',
|
||||||
click: (_record, _modal, _instance) => this.partnerView(_record),
|
click: (_record, _modal, _instance) => this.partnerView(_record)
|
||||||
},
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@ -182,13 +175,12 @@ export class ParterAdviceFeedbackListComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '详情',
|
text: '详情',
|
||||||
click: (_record, _modal, _instance) => this.channelView(_record),
|
click: (_record, _modal, _instance) => this.channelView(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '审核',
|
text: '审核',
|
||||||
click: (_record, _modal, _instance) => this.channelView(_record),
|
click: (_record, _modal, _instance) => this.channelView(_record)
|
||||||
},
|
}
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@ -211,8 +203,8 @@ export class ParterAdviceFeedbackListComponent implements OnInit {
|
|||||||
// this.st1?.load(1);
|
// this.st1?.load(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
tabChange(index:any){
|
tabChange(index: any) {
|
||||||
console.log(index)
|
console.log(index);
|
||||||
switch (index) {
|
switch (index) {
|
||||||
case 0:
|
case 0:
|
||||||
this.initST1();
|
this.initST1();
|
||||||
@ -224,5 +216,4 @@ export class ParterAdviceFeedbackListComponent implements OnInit {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,11 +1,15 @@
|
|||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
|
||||||
import { apiConf } from '@conf/api.conf';
|
import { apiConf } from '@conf/api.conf';
|
||||||
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSchemaEnumType, SFSelectWidgetSchema, SFTextareaWidgetSchema, SFUISchema, SFUploadWidgetSchema } from '@delon/form';
|
import {
|
||||||
import { _HttpClient } from '@delon/theme';
|
SFComponent,
|
||||||
|
SFRadioWidgetSchema,
|
||||||
|
SFSchema,
|
||||||
|
SFSelectWidgetSchema,
|
||||||
|
SFTextareaWidgetSchema,
|
||||||
|
SFUISchema,
|
||||||
|
SFUploadWidgetSchema
|
||||||
|
} from '@delon/form';
|
||||||
import { Observable, Observer } from 'rxjs';
|
import { Observable, Observer } from 'rxjs';
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
import { AmapPoiPickerComponent } from 'src/app/shared/components/amap';
|
|
||||||
import { ChannelSalesService } from '../../services/channel-sales.service';
|
import { ChannelSalesService } from '../../services/channel-sales.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -19,12 +23,7 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
i: any;
|
i: any;
|
||||||
type: any;
|
type: any;
|
||||||
|
|
||||||
constructor(
|
constructor(public service: ChannelSalesService) {}
|
||||||
public http: _HttpClient,
|
|
||||||
private cdr: ChangeDetectorRef,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
public service: ChannelSalesService,
|
|
||||||
) {}
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -44,8 +43,8 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
autosize: { minRows: 3, maxRows: 6 },
|
autosize: { minRows: 3, maxRows: 6 },
|
||||||
placeholder:'请输入50字符'
|
placeholder: '请输入50字符'
|
||||||
} as SFTextareaWidgetSchema,
|
} as SFTextareaWidgetSchema
|
||||||
},
|
},
|
||||||
name2: {
|
name2: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -54,8 +53,8 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
autosize: { minRows: 3, maxRows: 6 },
|
autosize: { minRows: 3, maxRows: 6 },
|
||||||
placeholder:'请输入50字符'
|
placeholder: '请输入50字符'
|
||||||
} as SFTextareaWidgetSchema,
|
} as SFTextareaWidgetSchema
|
||||||
},
|
},
|
||||||
name3: {
|
name3: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -89,12 +88,10 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
name: {
|
name: {
|
||||||
title: '分类',
|
title: '分类',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
enum: [
|
enum: [{ label: '管理员', value: '1' }],
|
||||||
{ label: '管理员', value: '1'},
|
|
||||||
],
|
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select'
|
||||||
} as SFSelectWidgetSchema,
|
} as SFSelectWidgetSchema
|
||||||
},
|
},
|
||||||
name4: {
|
name4: {
|
||||||
type: 'number',
|
type: 'number',
|
||||||
@ -102,21 +99,21 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
minimum: 0,
|
minimum: 0,
|
||||||
maximum: 99,
|
maximum: 99,
|
||||||
ui: {
|
ui: {
|
||||||
widgetWidth: 300 ,
|
widgetWidth: 300,
|
||||||
placeholder:'请输入0~99,数字越大,排序越靠前'
|
placeholder: '请输入0~99,数字越大,排序越靠前'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
name5: {
|
name5: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '跳转路径',
|
title: '跳转路径',
|
||||||
enum: [
|
enum: [
|
||||||
{ label: '图文', value: '1'},
|
{ label: '图文', value: '1' },
|
||||||
{ label: '视频', value: '2'},
|
{ label: '视频', value: '2' }
|
||||||
],
|
],
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'radio',
|
widget: 'radio'
|
||||||
} as SFRadioWidgetSchema,
|
} as SFRadioWidgetSchema,
|
||||||
default: '1',
|
default: '1'
|
||||||
},
|
},
|
||||||
content: {
|
content: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -128,7 +125,7 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
height: 450
|
height: 450
|
||||||
},
|
},
|
||||||
visibleIf: { name5: (value: string) => value === '1' }
|
visibleIf: { name5: (value: string) => value === '1' }
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
name6: {
|
name6: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -159,7 +156,7 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
visibleIf: { name5: (value: string) => value === '2' }
|
visibleIf: { name5: (value: string) => value === '2' }
|
||||||
} as SFUploadWidgetSchema
|
} as SFUploadWidgetSchema
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
required: ['name1', 'name2']
|
required: ['name1', 'name2']
|
||||||
};
|
};
|
||||||
@ -167,17 +164,14 @@ export class ParterArticleManagementEditComponent implements OnInit {
|
|||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 150,
|
spanLabelFixed: 150,
|
||||||
grid: { span: 20 }
|
grid: { span: 20 }
|
||||||
},
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
close() {
|
close() {}
|
||||||
|
|
||||||
}
|
|
||||||
save() {
|
save() {
|
||||||
this.sf.validator({ emitError: true });
|
this.sf.validator({ emitError: true });
|
||||||
if(!this.sf.valid) return;
|
if (!this.sf.valid) return;
|
||||||
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
||||||
// if (res) {
|
// if (res) {
|
||||||
// this.modalRef.destroy(true);
|
// this.modalRef.destroy(true);
|
||||||
|
|||||||
@ -1,11 +1,9 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort } from '@shared';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { ChannelSalesService } from '../../services/channel-sales.service';
|
import { ChannelSalesService } from '../../services/channel-sales.service';
|
||||||
import { ParterArticleManagementEditComponent } from '../edit/edit.component';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-parter-article-management-list',
|
selector: 'app-parter-article-management-list',
|
||||||
@ -22,13 +20,8 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
spuStatus = '1';
|
spuStatus = '1';
|
||||||
_$expand = false;
|
_$expand = false;
|
||||||
|
|
||||||
data=[{name1:1111}]
|
data = [{ name1: 1111 }];
|
||||||
constructor(
|
constructor(public router: Router, public service: ChannelSalesService, private modalService: NzModalService) {}
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: ChannelSalesService,
|
|
||||||
private modalService: NzModalService
|
|
||||||
) {}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询参数
|
* 查询参数
|
||||||
@ -40,7 +33,7 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
/**
|
/**
|
||||||
* 重置表单
|
* 重置表单
|
||||||
*/
|
*/
|
||||||
resetSF() {
|
resetSF() {
|
||||||
this.sf.reset();
|
this.sf.reset();
|
||||||
this.st.load(1);
|
this.st.load(1);
|
||||||
}
|
}
|
||||||
@ -49,19 +42,19 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
// this.st1?.load(1);
|
// this.st1?.load(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询字段个数
|
* 查询字段个数
|
||||||
*/
|
*/
|
||||||
get queryFieldCount(): number {
|
get queryFieldCount(): number {
|
||||||
return Object.keys(this.schema?.properties || {}).length;
|
return Object.keys(this.schema?.properties || {}).length;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 伸缩查询条件
|
* 伸缩查询条件
|
||||||
*/
|
*/
|
||||||
expandToggle(): void {
|
expandToggle(): void {
|
||||||
this._$expand = !this._$expand;
|
this._$expand = !this._$expand;
|
||||||
this.sf?.setValue('/_$expand', this._$expand);
|
this.sf?.setValue('/_$expand', this._$expand);
|
||||||
}
|
}
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
this.initST();
|
this.initST();
|
||||||
@ -91,8 +84,7 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
_$expand: (value: boolean) => value
|
_$expand: (value: boolean) => value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
@ -138,19 +130,19 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '修改',
|
text: '修改',
|
||||||
click: (_record, _modal, _instance) => this.edit(_record),
|
click: (_record, _modal, _instance) => this.edit(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '禁用',
|
text: '禁用',
|
||||||
click: (_record, _modal, _instance) => this.stop(_record),
|
click: (_record, _modal, _instance) => this.stop(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '启用',
|
text: '启用',
|
||||||
click: (_record, _modal, _instance) => this.start(_record.id),
|
click: (_record, _modal, _instance) => this.start(_record.id)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '推荐到首页',
|
text: '推荐到首页',
|
||||||
click: (_record, _modal, _instance) => this.recommend(_record.id),
|
click: (_record, _modal, _instance) => this.recommend(_record.id)
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@ -166,11 +158,10 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
this.router.navigate(['/partner/knowledge/article-management-edit'], { queryParams: {} });
|
this.router.navigate(['/partner/knowledge/article-management-edit'], { queryParams: {} });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
stop(record: STData) {
|
stop(record: STData) {
|
||||||
this.modalService.confirm({
|
this.modalService.confirm({
|
||||||
nzTitle: '<i>禁用确认</i>',
|
nzTitle: '<i>禁用确认</i>',
|
||||||
nzContent: `<b>确定禁用此文章吗?</br>`,
|
nzContent: `<b>确定禁用此文章吗?</br>`
|
||||||
// nzOnOk: () =>
|
// nzOnOk: () =>
|
||||||
// this.service.request('', '').subscribe(res => {
|
// this.service.request('', '').subscribe(res => {
|
||||||
// if (res) {
|
// if (res) {
|
||||||
@ -183,7 +174,7 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
start(record: STData) {
|
start(record: STData) {
|
||||||
this.modalService.confirm({
|
this.modalService.confirm({
|
||||||
nzTitle: '<i>启用确认</i>',
|
nzTitle: '<i>启用确认</i>',
|
||||||
nzContent: `<b>确定启用此文章吗?</br>`,
|
nzContent: `<b>确定启用此文章吗?</br>`
|
||||||
// nzOnOk: () =>
|
// nzOnOk: () =>
|
||||||
// this.service.request('', '').subscribe(res => {
|
// this.service.request('', '').subscribe(res => {
|
||||||
// if (res) {
|
// if (res) {
|
||||||
@ -193,8 +184,5 @@ export class ParterArticleManagementListComponent implements OnInit {
|
|||||||
// })
|
// })
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
recommend(record: STData) {
|
recommend(record: STData) {}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent, STData } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort } from '@shared';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { ChannelSalesService } from '../../services/channel-sales.service';
|
import { ChannelSalesService } from '../../services/channel-sales.service';
|
||||||
import { ParterChannelSalesEditComponent } from '../edit/edit.component';
|
import { ParterChannelSalesEditComponent } from '../edit/edit.component';
|
||||||
@ -24,7 +23,6 @@ export class ParterChannelSalesListComponent implements OnInit {
|
|||||||
data = [{ name1: 1111 }]
|
data = [{ name1: 1111 }]
|
||||||
constructor(
|
constructor(
|
||||||
public router: Router,
|
public router: Router,
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: ChannelSalesService,
|
public service: ChannelSalesService,
|
||||||
private modalService: NzModalService
|
private modalService: NzModalService
|
||||||
) { }
|
) { }
|
||||||
@ -135,7 +133,13 @@ export class ParterChannelSalesListComponent implements OnInit {
|
|||||||
acl: { ability: ['channelSales-frozen'] },
|
acl: { ability: ['channelSales-frozen'] },
|
||||||
iif: (item) => {return item.stateLocked == false},
|
iif: (item) => {return item.stateLocked == false},
|
||||||
click: (_record, _modal, _instance) => this.stop(_record),
|
click: (_record, _modal, _instance) => this.stop(_record),
|
||||||
}
|
},
|
||||||
|
{
|
||||||
|
text: '启用',
|
||||||
|
acl: { ability: ['channelSales-open'] },
|
||||||
|
iif: (item) => {return item.stateLocked == true},
|
||||||
|
click: (_record, _modal, _instance) => this.open(_record),
|
||||||
|
},
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@ -187,6 +191,24 @@ export class ParterChannelSalesListComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
open(record: STData) {
|
||||||
|
if (record.stateLocked) {
|
||||||
|
const params = {
|
||||||
|
id: record.id
|
||||||
|
}
|
||||||
|
this.modalService.confirm({
|
||||||
|
nzTitle: '<i>启用确认</i>',
|
||||||
|
nzContent: `<b>确定启用该账号吗?</br>`,
|
||||||
|
nzOnOk: () =>
|
||||||
|
this.service.request(this.service.$api_activeChannelSales, params).subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.service.msgSrv.success('启用成功!');
|
||||||
|
this.st.reload();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 重置表单
|
* 重置表单
|
||||||
|
|||||||
@ -21,6 +21,8 @@ export class ChannelSalesService extends BaseService {
|
|||||||
$api_getChannelSalesInfo = '/api/mdc/channelSalesManagement/getChannelSalesInfo';
|
$api_getChannelSalesInfo = '/api/mdc/channelSalesManagement/getChannelSalesInfo';
|
||||||
// 冻结渠道销售
|
// 冻结渠道销售
|
||||||
$api_frozenChannelSales = '/api/mdc/channelSalesManagement/frozenChannelSales';
|
$api_frozenChannelSales = '/api/mdc/channelSalesManagement/frozenChannelSales';
|
||||||
|
// 激活渠道销售
|
||||||
|
$api_activeChannelSales = '/api/mdc/channelSalesManagement/activeChannelSales';
|
||||||
|
|
||||||
|
|
||||||
constructor(public injector: Injector) {
|
constructor(public injector: Injector) {
|
||||||
|
|||||||
@ -1,13 +1,8 @@
|
|||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { SFComponent, SFSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSchemaEnumType, SFSelectWidgetSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
import { AmapPoiPickerComponent } from 'src/app/shared/components/amap';
|
|
||||||
import { ClaimAuditService } from '../../services/claim-audit.service';
|
import { ClaimAuditService } from '../../services/claim-audit.service';
|
||||||
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-parter-claim-audit-channel-approve',
|
selector: 'app-parter-claim-audit-channel-approve',
|
||||||
templateUrl: './channel-approve.component.html'
|
templateUrl: './channel-approve.component.html'
|
||||||
@ -19,14 +14,7 @@ export class ParterClaimAuditListChannelApproveComponent implements OnInit {
|
|||||||
i: any;
|
i: any;
|
||||||
type: any;
|
type: any;
|
||||||
|
|
||||||
constructor(
|
constructor(public service: ClaimAuditService, private modalRef: NzModalRef) {}
|
||||||
public http: _HttpClient,
|
|
||||||
private cdr: ChangeDetectorRef,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
public service: ClaimAuditService,
|
|
||||||
private modalRef: NzModalRef
|
|
||||||
) {}
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -43,20 +31,20 @@ export class ParterClaimAuditListChannelApproveComponent implements OnInit {
|
|||||||
title: '合伙人(认领人)',
|
title: '合伙人(认领人)',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
name2: {
|
name2: {
|
||||||
title: '认领客户名称',
|
title: '认领客户名称',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
title: '结算起算日期',
|
title: '结算起算日期',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
format: 'date',
|
format: 'date'
|
||||||
},
|
},
|
||||||
name3: {
|
name3: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -65,9 +53,9 @@ export class ParterClaimAuditListChannelApproveComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
autosize: { minRows: 3, maxRows: 6 },
|
autosize: { minRows: 3, maxRows: 6 },
|
||||||
placeholder:'请不要超过50个字'
|
placeholder: '请不要超过50个字'
|
||||||
} as SFTextareaWidgetSchema,
|
} as SFTextareaWidgetSchema
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
required: ['name3']
|
required: ['name3']
|
||||||
};
|
};
|
||||||
@ -75,7 +63,7 @@ export class ParterClaimAuditListChannelApproveComponent implements OnInit {
|
|||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 120,
|
spanLabelFixed: 120,
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -84,7 +72,7 @@ export class ParterClaimAuditListChannelApproveComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
this.sf.validator({ emitError: true });
|
this.sf.validator({ emitError: true });
|
||||||
if(!this.sf.valid) return;
|
if (!this.sf.valid) return;
|
||||||
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
||||||
// if (res) {
|
// if (res) {
|
||||||
// this.modalRef.destroy(true);
|
// this.modalRef.destroy(true);
|
||||||
@ -93,6 +81,4 @@ export class ParterClaimAuditListChannelApproveComponent implements OnInit {
|
|||||||
// }
|
// }
|
||||||
// });
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,11 +2,7 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { ActivatedRoute, Router } from '@angular/router';
|
||||||
import { STColumn } from '@delon/abc/st';
|
import { STColumn } from '@delon/abc/st';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzCardComponent } from 'ng-zorro-antd/card';
|
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import format from 'date-fns/format';
|
|
||||||
|
|
||||||
import { ClaimAuditService } from '../../services/claim-audit.service';
|
import { ClaimAuditService } from '../../services/claim-audit.service';
|
||||||
import { ParterClaimAuditListChannelApproveComponent } from '../channel-approve/channel-approve.component';
|
import { ParterClaimAuditListChannelApproveComponent } from '../channel-approve/channel-approve.component';
|
||||||
@ -34,10 +30,8 @@ export class ParterClaimAuditListChannelDetailComponent implements OnInit {
|
|||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private route: ActivatedRoute,
|
private route: ActivatedRoute,
|
||||||
private msgSrv: NzMessageService,
|
|
||||||
private service: ClaimAuditService,
|
private service: ClaimAuditService,
|
||||||
private modalService: NzModalService,
|
private modalService: NzModalService,
|
||||||
private router: Router
|
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
|
|||||||
@ -1,13 +1,8 @@
|
|||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { SFComponent, SFSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSchemaEnumType, SFSelectWidgetSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
import { AmapPoiPickerComponent } from 'src/app/shared/components/amap';
|
|
||||||
import { ClaimAuditService } from '../../services/claim-audit.service';
|
import { ClaimAuditService } from '../../services/claim-audit.service';
|
||||||
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-parter-claim-audit-channel-reject',
|
selector: 'app-parter-claim-audit-channel-reject',
|
||||||
templateUrl: './channel-reject.component.html'
|
templateUrl: './channel-reject.component.html'
|
||||||
@ -19,14 +14,7 @@ export class ParterClaimAuditListChannelRejectComponent implements OnInit {
|
|||||||
i: any;
|
i: any;
|
||||||
type: any;
|
type: any;
|
||||||
|
|
||||||
constructor(
|
constructor(public service: ClaimAuditService, private modalRef: NzModalRef) {}
|
||||||
public http: _HttpClient,
|
|
||||||
private cdr: ChangeDetectorRef,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
public service: ClaimAuditService,
|
|
||||||
private modalRef: NzModalRef
|
|
||||||
) {}
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -43,20 +31,20 @@ export class ParterClaimAuditListChannelRejectComponent implements OnInit {
|
|||||||
title: '合伙人(认领人)',
|
title: '合伙人(认领人)',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
name2: {
|
name2: {
|
||||||
title: '认领客户名称',
|
title: '认领客户名称',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
title: '结算起算日期',
|
title: '结算起算日期',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
format: 'date',
|
format: 'date'
|
||||||
},
|
},
|
||||||
name3: {
|
name3: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -65,9 +53,9 @@ export class ParterClaimAuditListChannelRejectComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
autosize: { minRows: 3, maxRows: 6 },
|
autosize: { minRows: 3, maxRows: 6 },
|
||||||
placeholder:'请不要超过50个字'
|
placeholder: '请不要超过50个字'
|
||||||
} as SFTextareaWidgetSchema,
|
} as SFTextareaWidgetSchema
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
required: ['name3']
|
required: ['name3']
|
||||||
};
|
};
|
||||||
@ -75,7 +63,7 @@ export class ParterClaimAuditListChannelRejectComponent implements OnInit {
|
|||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 120,
|
spanLabelFixed: 120,
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -84,7 +72,7 @@ export class ParterClaimAuditListChannelRejectComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
this.sf.validator({ emitError: true });
|
this.sf.validator({ emitError: true });
|
||||||
if(!this.sf.valid) return;
|
if (!this.sf.valid) return;
|
||||||
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
||||||
// if (res) {
|
// if (res) {
|
||||||
// this.modalRef.destroy(true);
|
// this.modalRef.destroy(true);
|
||||||
@ -93,6 +81,4 @@ export class ParterClaimAuditListChannelRejectComponent implements OnInit {
|
|||||||
// }
|
// }
|
||||||
// });
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,9 +1,7 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent, STData } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort } from '@shared';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { ClaimAuditService } from '../../services/claim-audit.service';
|
import { ClaimAuditService } from '../../services/claim-audit.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -22,15 +20,10 @@ export class ParterClaimAuditListComponent implements OnInit {
|
|||||||
@ViewChild('sf', { static: false })
|
@ViewChild('sf', { static: false })
|
||||||
sf!: SFComponent;
|
sf!: SFComponent;
|
||||||
_$expand = false;
|
_$expand = false;
|
||||||
selectedIndex = 0;
|
selectedIndex = 0;
|
||||||
|
|
||||||
data=[{name1:1111}]
|
data = [{ name1: 1111 }];
|
||||||
constructor(
|
constructor(public router: Router, public service: ClaimAuditService) {}
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: ClaimAuditService,
|
|
||||||
private modalService: NzModalService
|
|
||||||
) {}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询参数
|
* 查询参数
|
||||||
@ -38,19 +31,19 @@ export class ParterClaimAuditListComponent implements OnInit {
|
|||||||
get reqParams() {
|
get reqParams() {
|
||||||
return { ...this.sf?.value };
|
return { ...this.sf?.value };
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 查询字段个数
|
* 查询字段个数
|
||||||
*/
|
*/
|
||||||
get queryFieldCount(): number {
|
get queryFieldCount(): number {
|
||||||
return Object.keys(this.schema?.properties || {}).length;
|
return Object.keys(this.schema?.properties || {}).length;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 伸缩查询条件
|
* 伸缩查询条件
|
||||||
*/
|
*/
|
||||||
expandToggle(): void {
|
expandToggle(): void {
|
||||||
this._$expand = !this._$expand;
|
this._$expand = !this._$expand;
|
||||||
this.sf?.setValue('/_$expand', this._$expand);
|
this.sf?.setValue('/_$expand', this._$expand);
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -91,7 +84,7 @@ export class ParterClaimAuditListComponent implements OnInit {
|
|||||||
_$expand: (value: boolean) => value
|
_$expand: (value: boolean) => value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
@ -141,12 +134,12 @@ export class ParterClaimAuditListComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '详情',
|
text: '详情',
|
||||||
click: (_record, _modal, _instance) => this.partnerView(_record),
|
click: (_record, _modal, _instance) => this.partnerView(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '审核',
|
text: '审核',
|
||||||
click: (_record, _modal, _instance) => this.partnerView(_record),
|
click: (_record, _modal, _instance) => this.partnerView(_record)
|
||||||
},
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@ -184,13 +177,12 @@ export class ParterClaimAuditListComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '详情',
|
text: '详情',
|
||||||
click: (_record, _modal, _instance) => this.channelView(_record),
|
click: (_record, _modal, _instance) => this.channelView(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '审核',
|
text: '审核',
|
||||||
click: (_record, _modal, _instance) => this.channelView(_record),
|
click: (_record, _modal, _instance) => this.channelView(_record)
|
||||||
},
|
}
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@ -213,8 +205,8 @@ export class ParterClaimAuditListComponent implements OnInit {
|
|||||||
// this.st1?.load(1);
|
// this.st1?.load(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
tabChange(index:any){
|
tabChange(index: any) {
|
||||||
console.log(index)
|
console.log(index);
|
||||||
switch (index) {
|
switch (index) {
|
||||||
case 0:
|
case 0:
|
||||||
this.initST1();
|
this.initST1();
|
||||||
@ -226,5 +218,4 @@ export class ParterClaimAuditListComponent implements OnInit {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,13 +1,9 @@
|
|||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { SFComponent, SFSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSchemaEnumType, SFSelectWidgetSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
|
||||||
import { _HttpClient } from '@delon/theme';
|
import { _HttpClient } from '@delon/theme';
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
import { AmapPoiPickerComponent } from 'src/app/shared/components/amap';
|
|
||||||
import { ClaimAuditService } from '../../services/claim-audit.service';
|
import { ClaimAuditService } from '../../services/claim-audit.service';
|
||||||
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-parter-claim-audit-partner-approve',
|
selector: 'app-parter-claim-audit-partner-approve',
|
||||||
templateUrl: './partner-approve.component.html'
|
templateUrl: './partner-approve.component.html'
|
||||||
@ -19,14 +15,7 @@ export class ParterClaimAuditListPartnerApproveComponent implements OnInit {
|
|||||||
i: any;
|
i: any;
|
||||||
type: any;
|
type: any;
|
||||||
|
|
||||||
constructor(
|
constructor(public service: ClaimAuditService, private modalRef: NzModalRef) {}
|
||||||
public http: _HttpClient,
|
|
||||||
private cdr: ChangeDetectorRef,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
public service: ClaimAuditService,
|
|
||||||
private modalRef: NzModalRef
|
|
||||||
) {}
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -43,20 +32,20 @@ export class ParterClaimAuditListPartnerApproveComponent implements OnInit {
|
|||||||
title: '合伙人(认领人)',
|
title: '合伙人(认领人)',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
name2: {
|
name2: {
|
||||||
title: '认领客户名称',
|
title: '认领客户名称',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
title: '结算起算日期',
|
title: '结算起算日期',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
format: 'date',
|
format: 'date'
|
||||||
},
|
},
|
||||||
name3: {
|
name3: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -65,9 +54,9 @@ export class ParterClaimAuditListPartnerApproveComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
autosize: { minRows: 3, maxRows: 6 },
|
autosize: { minRows: 3, maxRows: 6 },
|
||||||
placeholder:'请不要超过50个字'
|
placeholder: '请不要超过50个字'
|
||||||
} as SFTextareaWidgetSchema,
|
} as SFTextareaWidgetSchema
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
required: ['name3']
|
required: ['name3']
|
||||||
};
|
};
|
||||||
@ -75,7 +64,7 @@ export class ParterClaimAuditListPartnerApproveComponent implements OnInit {
|
|||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 120,
|
spanLabelFixed: 120,
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -84,7 +73,7 @@ export class ParterClaimAuditListPartnerApproveComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
this.sf.validator({ emitError: true });
|
this.sf.validator({ emitError: true });
|
||||||
if(!this.sf.valid) return;
|
if (!this.sf.valid) return;
|
||||||
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
||||||
// if (res) {
|
// if (res) {
|
||||||
// this.modalRef.destroy(true);
|
// this.modalRef.destroy(true);
|
||||||
@ -93,6 +82,4 @@ export class ParterClaimAuditListPartnerApproveComponent implements OnInit {
|
|||||||
// }
|
// }
|
||||||
// });
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,15 +1,9 @@
|
|||||||
|
|
||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { STColumn } from '@delon/abc/st';
|
import { STColumn } from '@delon/abc/st';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzCardComponent } from 'ng-zorro-antd/card';
|
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import format from 'date-fns/format';
|
|
||||||
import { ClaimAuditService } from '../../services/claim-audit.service';
|
|
||||||
import { ParterClaimAuditListPartnerRejectComponent } from '../partner-reject/partner-reject.component';
|
import { ParterClaimAuditListPartnerRejectComponent } from '../partner-reject/partner-reject.component';
|
||||||
import { ParterClaimAuditListPartnerApproveComponent } from '../partner-approve/partner-approve.component';
|
import { ParterClaimAuditListPartnerApproveComponent } from '../partner-approve/partner-approve.component';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-parter-claim-audit-partner-detail',
|
selector: 'app-parter-claim-audit-partner-detail',
|
||||||
@ -23,21 +17,15 @@ export class ParterClaimAuditListPartnerDetailComponent implements OnInit {
|
|||||||
isVisible = false;
|
isVisible = false;
|
||||||
columns: STColumn[] = [
|
columns: STColumn[] = [
|
||||||
{ title: '操作时间', index: 'id', width: 120 },
|
{ title: '操作时间', index: 'id', width: 120 },
|
||||||
{ title: '操作人', type: 'img', width: 120, },
|
{ title: '操作人', type: 'img', width: 120 },
|
||||||
{ title: '操作人手机号', index: 'email', width: 120 },
|
{ title: '操作人手机号', index: 'email', width: 120 },
|
||||||
{ title: '操作页面', index: 'phone' },
|
{ title: '操作页面', index: 'phone' },
|
||||||
{ title: '操作内容', index: 'registered' }
|
{ title: '操作内容', index: 'registered' }
|
||||||
];
|
];
|
||||||
|
|
||||||
data=[{id:11111}]
|
data = [{ id: 11111 }];
|
||||||
|
|
||||||
constructor(
|
constructor(private route: ActivatedRoute, private modalService: NzModalService) {}
|
||||||
private route: ActivatedRoute,
|
|
||||||
private msgSrv: NzMessageService,
|
|
||||||
private service: ClaimAuditService,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
private router: Router
|
|
||||||
) {}
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initData();
|
this.initData();
|
||||||
@ -77,6 +65,4 @@ export class ParterClaimAuditListPartnerDetailComponent implements OnInit {
|
|||||||
goBack() {
|
goBack() {
|
||||||
window.history.go(-1);
|
window.history.go(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,13 +1,8 @@
|
|||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { SFComponent, SFSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSchemaEnumType, SFSelectWidgetSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
import { AmapPoiPickerComponent } from 'src/app/shared/components/amap';
|
|
||||||
import { ClaimAuditService } from '../../services/claim-audit.service';
|
import { ClaimAuditService } from '../../services/claim-audit.service';
|
||||||
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-parter-claim-audit-partner-reject',
|
selector: 'app-parter-claim-audit-partner-reject',
|
||||||
templateUrl: './partner-reject.component.html'
|
templateUrl: './partner-reject.component.html'
|
||||||
@ -19,14 +14,7 @@ export class ParterClaimAuditListPartnerRejectComponent implements OnInit {
|
|||||||
i: any;
|
i: any;
|
||||||
type: any;
|
type: any;
|
||||||
|
|
||||||
constructor(
|
constructor(public service: ClaimAuditService, private modalRef: NzModalRef) {}
|
||||||
public http: _HttpClient,
|
|
||||||
private cdr: ChangeDetectorRef,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
public service: ClaimAuditService,
|
|
||||||
private modalRef: NzModalRef
|
|
||||||
) {}
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -43,20 +31,20 @@ export class ParterClaimAuditListPartnerRejectComponent implements OnInit {
|
|||||||
title: '合伙人(认领人)',
|
title: '合伙人(认领人)',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
name2: {
|
name2: {
|
||||||
title: '认领客户名称',
|
title: '认领客户名称',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'text',
|
widget: 'text'
|
||||||
} ,
|
}
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
title: '结算起算日期',
|
title: '结算起算日期',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
format: 'date',
|
format: 'date'
|
||||||
},
|
},
|
||||||
name3: {
|
name3: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -65,9 +53,9 @@ export class ParterClaimAuditListPartnerRejectComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
autosize: { minRows: 3, maxRows: 6 },
|
autosize: { minRows: 3, maxRows: 6 },
|
||||||
placeholder:'请不要超过50个字'
|
placeholder: '请不要超过50个字'
|
||||||
} as SFTextareaWidgetSchema,
|
} as SFTextareaWidgetSchema
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
required: ['name3']
|
required: ['name3']
|
||||||
};
|
};
|
||||||
@ -75,7 +63,7 @@ export class ParterClaimAuditListPartnerRejectComponent implements OnInit {
|
|||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 120,
|
spanLabelFixed: 120,
|
||||||
grid: { span: 24 }
|
grid: { span: 24 }
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -84,7 +72,7 @@ export class ParterClaimAuditListPartnerRejectComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
this.sf.validator({ emitError: true });
|
this.sf.validator({ emitError: true });
|
||||||
if(!this.sf.valid) return;
|
if (!this.sf.valid) return;
|
||||||
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
// this.service.request('', { ...this.sf?.value }).subscribe(res => {
|
||||||
// if (res) {
|
// if (res) {
|
||||||
// this.modalRef.destroy(true);
|
// this.modalRef.destroy(true);
|
||||||
@ -93,6 +81,4 @@ export class ParterClaimAuditListPartnerRejectComponent implements OnInit {
|
|||||||
// }
|
// }
|
||||||
// });
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,6 @@ import { BannerService } from '../../services/banner.service';
|
|||||||
templateUrl: './list.component.html',
|
templateUrl: './list.component.html',
|
||||||
styleUrls: ['./list.component.less']
|
styleUrls: ['./list.component.less']
|
||||||
})
|
})
|
||||||
|
|
||||||
export class BannerComponentsListComponent implements OnInit {
|
export class BannerComponentsListComponent implements OnInit {
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
columns: STColumn[] = [];
|
columns: STColumn[] = [];
|
||||||
@ -27,7 +26,14 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
|
|
||||||
@ViewChild('st', { static: false }) st!: STComponent;
|
@ViewChild('st', { static: false }) st!: STComponent;
|
||||||
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
@ViewChild('sf', { static: false }) sf!: SFComponent;
|
||||||
constructor(public service: BannerService, private modal: ModalHelper, private msg: NzMessageService, private router: Router, private modalSrv: NzModalService, private ar: ActivatedRoute) { }
|
constructor(
|
||||||
|
public service: BannerService,
|
||||||
|
private modal: ModalHelper,
|
||||||
|
private msg: NzMessageService,
|
||||||
|
private router: Router,
|
||||||
|
private modalSrv: NzModalService,
|
||||||
|
private ar: ActivatedRoute
|
||||||
|
) {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询字段个数
|
* 查询字段个数
|
||||||
@ -51,14 +57,14 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
if (params.navigationId === '') {
|
if (params.navigationId === '') {
|
||||||
delete params.navigationId;
|
delete params.navigationId;
|
||||||
}
|
}
|
||||||
return { ...params};
|
return { ...params };
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 选中行
|
* 选中行
|
||||||
*/
|
*/
|
||||||
get selectedRows() {
|
get selectedRows() {
|
||||||
return this.st?.list.filter((item) => item.checked) || [];
|
return this.st?.list.filter(item => item.checked) || [];
|
||||||
}
|
}
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -80,8 +86,8 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
_$expand: {
|
_$expand: {
|
||||||
type: 'boolean',
|
type: 'boolean',
|
||||||
ui: {
|
ui: {
|
||||||
hidden: true,
|
hidden: true
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
name: {
|
name: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -89,7 +95,7 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
maxLength: 10,
|
maxLength: 10,
|
||||||
ui: {
|
ui: {
|
||||||
widget: '',
|
widget: '',
|
||||||
placeholder: '请输入',
|
placeholder: '请输入'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
status: {
|
status: {
|
||||||
@ -98,21 +104,21 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
allowClear: true,
|
allowClear: true
|
||||||
} as SFSelectWidgetSchema,
|
} as SFSelectWidgetSchema,
|
||||||
enum: [
|
enum: [
|
||||||
{ label: '全部', value: 1 },
|
{ label: '全部', value: 1 },
|
||||||
{ label: '正常', value: 2 },
|
{ label: '正常', value: 2 },
|
||||||
{ label: '禁用', value: 3 }
|
{ label: '禁用', value: 3 }
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 110,
|
spanLabelFixed: 110,
|
||||||
grid: { span: 8 },
|
grid: { span: 8 }
|
||||||
},
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -140,7 +146,7 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
type: 'enum',
|
type: 'enum',
|
||||||
enum: {
|
enum: {
|
||||||
1: '正常',
|
1: '正常',
|
||||||
2: '禁用',
|
2: '禁用'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -157,7 +163,7 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
{
|
{
|
||||||
text: '修改',
|
text: '修改',
|
||||||
acl: { ability: ['banner-change'] },
|
acl: { ability: ['banner-change'] },
|
||||||
click: (item) => {
|
click: item => {
|
||||||
this.router.navigate(['../detail'], { queryParams: { id: item.id, type: 'edit' }, relativeTo: this.ar });
|
this.router.navigate(['../detail'], { queryParams: { id: item.id, type: 'edit' }, relativeTo: this.ar });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -167,12 +173,12 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
pop: {
|
pop: {
|
||||||
title: `确定禁用此banner图吗??`,
|
title: `确定禁用此banner图吗??`,
|
||||||
okType: 'danger',
|
okType: 'danger',
|
||||||
icon: 'alert',
|
icon: 'alert'
|
||||||
},
|
},
|
||||||
click: (item) => {
|
click: item => {
|
||||||
this.changeStatus(item.id);
|
this.changeStatus(item.id);
|
||||||
},
|
},
|
||||||
iif: (item) => item.status === 1
|
iif: item => item.status === 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '启用',
|
text: '启用',
|
||||||
@ -180,15 +186,15 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
pop: {
|
pop: {
|
||||||
title: `确定启用此banner图吗?`,
|
title: `确定启用此banner图吗?`,
|
||||||
okType: 'danger',
|
okType: 'danger',
|
||||||
icon: 'success',
|
icon: 'success'
|
||||||
},
|
},
|
||||||
click: (item) => {
|
click: item => {
|
||||||
this.changeStatus(item);
|
this.changeStatus(item);
|
||||||
},
|
},
|
||||||
iif: (item) => item.status === 2
|
iif: item => item.status === 2
|
||||||
},
|
}
|
||||||
],
|
]
|
||||||
},
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
changeStatus(item: any) {
|
changeStatus(item: any) {
|
||||||
@ -216,7 +222,7 @@ export class BannerComponentsListComponent implements OnInit {
|
|||||||
resetSF() {
|
resetSF() {
|
||||||
this.sf.reset();
|
this.sf.reset();
|
||||||
this._$expand = false;
|
this._$expand = false;
|
||||||
this.isLoading = true
|
this.isLoading = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -1,10 +1,17 @@
|
|||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
/*
|
||||||
import { ActivatedRoute } from '@angular/router';
|
* @Description :
|
||||||
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSchemaEnumType, SFSelectWidgetSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
* @Version : 1.0
|
||||||
|
* @Author : Shiming
|
||||||
|
* @Date : 2022-04-28 20:27:22
|
||||||
|
* @LastEditors : Shiming
|
||||||
|
* @LastEditTime : 2022-05-07 18:04:15
|
||||||
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\level-config\\components\\edit\\edit.component.ts
|
||||||
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
|
*/
|
||||||
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
|
import { SFComponent, SFSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { _HttpClient } from '@delon/theme';
|
import { _HttpClient } from '@delon/theme';
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
import { AmapPoiPickerComponent } from 'src/app/shared/components/amap';
|
|
||||||
import { ChannelSalesService } from '../../services/level-config.service';
|
import { ChannelSalesService } from '../../services/level-config.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -19,10 +26,6 @@ export class ParterLevelConfigEditComponent implements OnInit {
|
|||||||
type: any;
|
type: any;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
public http: _HttpClient,
|
|
||||||
private cdr: ChangeDetectorRef,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
public service: ChannelSalesService,
|
public service: ChannelSalesService,
|
||||||
private modalRef: NzModalRef
|
private modalRef: NzModalRef
|
||||||
) {}
|
) {}
|
||||||
@ -41,10 +44,17 @@ export class ParterLevelConfigEditComponent implements OnInit {
|
|||||||
gradeName: {
|
gradeName: {
|
||||||
title: '等级名称',
|
title: '等级名称',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
|
maxLength: 12
|
||||||
},
|
},
|
||||||
sortId: {
|
sortId: {
|
||||||
title: '排序',
|
title: '排序',
|
||||||
type: 'string',
|
minimum: 0,
|
||||||
|
type:"number",
|
||||||
|
ui: {
|
||||||
|
change: (item: any) => {
|
||||||
|
this.sf.setValue('/sortId', item?.toFixed(0))
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
remark: {
|
remark: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort } from '@shared';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { ChannelSalesService } from '../../services/level-config.service';
|
import { ChannelSalesService } from '../../services/level-config.service';
|
||||||
import { ParterLevelConfigEditComponent } from '../edit/edit.component';
|
import { ParterLevelConfigEditComponent } from '../edit/edit.component';
|
||||||
@ -23,8 +21,6 @@ export class ParterLevelConfigListComponent implements OnInit {
|
|||||||
|
|
||||||
data = [{ name1: 1111 }];
|
data = [{ name1: 1111 }];
|
||||||
constructor(
|
constructor(
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: ChannelSalesService,
|
public service: ChannelSalesService,
|
||||||
private modalService: NzModalService
|
private modalService: NzModalService
|
||||||
) {}
|
) {}
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
|
||||||
import { STColumn } from '@delon/abc/st';
|
import { STColumn } from '@delon/abc/st';
|
||||||
import { PartnerListService } from '../../services/partner-list.service';
|
import { PartnerListService } from '../../services/partner-list.service';
|
||||||
|
|
||||||
@ -10,7 +9,7 @@ import { PartnerListService } from '../../services/partner-list.service';
|
|||||||
export class ChannelLogModalComponent implements OnInit {
|
export class ChannelLogModalComponent implements OnInit {
|
||||||
columns: { changeColumn: STColumn[]; beChangeColumn: STColumn[] } = this.initST();
|
columns: { changeColumn: STColumn[]; beChangeColumn: STColumn[] } = this.initST();
|
||||||
id = '';
|
id = '';
|
||||||
constructor(public service: PartnerListService, public route: ActivatedRoute) {}
|
constructor(public service: PartnerListService) {}
|
||||||
|
|
||||||
ngOnInit(): void {}
|
ngOnInit(): void {}
|
||||||
|
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-04-29 17:28:23
|
* @Date : 2022-04-29 17:28:23
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-05-06 14:20:04
|
* @LastEditTime : 2022-05-10 11:39:19
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\partner-list\\components\\index\\partner-list.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\partner-list\\components\\index\\partner-list.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -13,11 +13,15 @@
|
|||||||
<nz-card class="search-box" nzBordered>
|
<nz-card class="search-box" nzBordered>
|
||||||
<div nz-row nzGutter="8">
|
<div nz-row nzGutter="8">
|
||||||
<div nz-col [nzXl]="_$expand ? 24 : 17" [nzLg]="24" [nzSm]="24" [nzXs]="24">
|
<div nz-col [nzXl]="_$expand ? 24 : 17" [nzLg]="24" [nzSm]="24" [nzXs]="24">
|
||||||
<sf #sf [schema]="searchSchema" [ui]="{ '*': { spanLabelFixed: 110, grid: { lg: 8, md: 12, sm: 12, xs: 24 } } }"
|
<sf
|
||||||
[compact]="true" [button]="'none'"></sf>
|
#sf
|
||||||
|
[schema]="searchSchema"
|
||||||
|
[ui]="{ '*': { spanLabelFixed: 110, grid: { lg: 8, md: 12, sm: 12, xs: 24 } } }"
|
||||||
|
[compact]="true"
|
||||||
|
[button]="'none'"
|
||||||
|
></sf>
|
||||||
</div>
|
</div>
|
||||||
<div nz-col [nzXl]="_$expand ? 24 : 7" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"
|
<div nz-col [nzXl]="_$expand ? 24 : 7" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right" [class.expend-options]="_$expand">
|
||||||
[class.expend-options]="_$expand">
|
|
||||||
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button>
|
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button>
|
||||||
<button nz-button (click)="resetSF()">重置</button>
|
<button nz-button (click)="resetSF()">重置</button>
|
||||||
<button nz-button nzType="link" (click)="expandToggle()">
|
<button nz-button nzType="link" (click)="expandToggle()">
|
||||||
@ -30,20 +34,48 @@
|
|||||||
|
|
||||||
<nz-card class="content-box" nzBordered>
|
<nz-card class="content-box" nzBordered>
|
||||||
<div class="d-flex align-items-center mb-md mt-md">
|
<div class="d-flex align-items-center mb-md mt-md">
|
||||||
<button nz-button (click)="this.routeTo('/partner/partner-list/add-etp-partner')" nzType="primary" acl [acl-ability]="['ENTERPRISE-saveEnterprise']">新增企业合伙人</button>
|
<button
|
||||||
<button nz-button (click)="this.routeTo('/partner/partner-list/add-personal-partner')"
|
nz-button
|
||||||
nzType="primary" acl [acl-ability]="['ENTERPRISE-savePersonally']">新增个人合伙人</button>
|
(click)="this.routeTo('/partner/partner-list/add-etp-partner')"
|
||||||
|
nzType="primary"
|
||||||
|
acl
|
||||||
|
[acl-ability]="['ENTERPRISE-saveEnterprise']"
|
||||||
|
>新增企业合伙人</button
|
||||||
|
>
|
||||||
|
<button
|
||||||
|
nz-button
|
||||||
|
(click)="this.routeTo('/partner/partner-list/add-personal-partner')"
|
||||||
|
nzType="primary"
|
||||||
|
acl
|
||||||
|
[acl-ability]="['ENTERPRISE-savePersonally']"
|
||||||
|
>新增个人合伙人</button
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<st #st [data]="service.$api_get_partner_page" [columns]="columns" [req]="{ process: beforeReq }"
|
<st
|
||||||
[loading]="service.http.loading" [scroll]="{ x: '1200px' }" [page]="{}">
|
#st
|
||||||
|
[data]="service.$api_get_partner_page"
|
||||||
|
[columns]="columns"
|
||||||
|
[req]="{ process: beforeReq }"
|
||||||
|
[loading]="service.http.loading"
|
||||||
|
[scroll]="{ x: '1200px' }"
|
||||||
|
[page]="{}"
|
||||||
|
>
|
||||||
|
<ng-template st-row="enterpriseName" let-item let-index="index">
|
||||||
|
<div>
|
||||||
|
{{item.partnerType ? item.enterpriseName || item.contactName : ''}}
|
||||||
|
</div>
|
||||||
|
<div *ngIf="item.partnerType == 1">
|
||||||
|
管理员: {{item.contactName }}
|
||||||
|
</div>
|
||||||
|
</ng-template>
|
||||||
</st>
|
</st>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<ng-template #editTemplate>
|
<ng-template #editTemplate>
|
||||||
<div nz-row nzGutter="8">
|
<div nz-row nzGutter="8">
|
||||||
<div nz-col nzSpan="24" se-container [labelWidth]="120">
|
<div nz-col nzSpan="24" se-container [labelWidth]="120">
|
||||||
<se [col]="1" label="合伙人名称"> {{selectItem?.enterpriseName || selectItem?.contactName}} </se>
|
<se [col]="1" label="合伙人名称"> {{ selectItem?.enterpriseName || selectItem?.contactName }} </se>
|
||||||
<se [col]="1" label="返佣模板" required>
|
<se [col]="1" label="返佣模板" required>
|
||||||
<nz-select [(ngModel)]="templateId" style="width: 100%">
|
<nz-select [(ngModel)]="templateId" style="width: 100%">
|
||||||
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of customers"></nz-option>
|
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of customers"></nz-option>
|
||||||
@ -57,32 +89,52 @@
|
|||||||
<ng-template #editCannel>
|
<ng-template #editCannel>
|
||||||
<div nz-row nzGutter="8">
|
<div nz-row nzGutter="8">
|
||||||
<div nz-col nzSpan="24" se-container [labelWidth]="140" [col]="1">
|
<div nz-col nzSpan="24" se-container [labelWidth]="140" [col]="1">
|
||||||
<se label="合伙人名称"> {{selectItem?.enterpriseName || selectItem?.contactName}} </se>
|
<se label="合伙人名称"> {{ selectItem?.enterpriseName || selectItem?.contactName }} </se>
|
||||||
<se label="当前渠道销售"> {{selectItem?.channelIdLabel}} </se>
|
<se label="当前渠道销售"> {{ selectItem?.channelIdLabel }} </se>
|
||||||
<se label="渠道销售修改为" required>
|
<se label="渠道销售修改为" required>
|
||||||
<nz-select [(ngModel)]="cannelItem.channelId" style="width: 100%">
|
<nz-select
|
||||||
<nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of cannels"></nz-option>
|
nzMode="multiple"
|
||||||
</nz-select>
|
nzPlaceHolder="请搜索"
|
||||||
|
nzAllowClear
|
||||||
|
nzShowSearch
|
||||||
|
nzServerSearch
|
||||||
|
[(ngModel)]="cannelItem.channelId"
|
||||||
|
(nzOnSearch)="onSearch($event)"
|
||||||
|
>
|
||||||
|
<ng-container *ngFor="let item of cannels">
|
||||||
|
<nz-option [nzValue]="item.value" [nzLabel]="item.label"></nz-option>
|
||||||
|
</ng-container>
|
||||||
|
</nz-select>
|
||||||
</se>
|
</se>
|
||||||
<se label="备注" required>
|
<se label="备注" required>
|
||||||
<textarea rows="3" nz-input [(ngModel)]="cannelItem.remark"></textarea>
|
<textarea rows="3" nz-input [(ngModel)]="cannelItem.remark"></textarea>
|
||||||
</se>
|
</se>
|
||||||
<se label="一并转移的客户">
|
<se label="一并转移的客户">
|
||||||
<p style="margin-top: 8px">已选({{selectedRows?.length}})</p>
|
<p style="margin-top: 8px">已选({{ selectedRows?.length }})</p>
|
||||||
<st #rest [data]="service.$api_get_enterprice_rel_list" [columns]="[
|
<st
|
||||||
{ title: '', index: 'key', type: 'checkbox' },
|
#rest
|
||||||
{ title: '客户名称', index: 'enterpriceName' }
|
[data]="service.$api_get_enterprice_rel_list"
|
||||||
]" [req]="{ process: beforeReq,params:{effectiveStatus:2 ,newPartnerId:selectItem.id} }"
|
[columns]="[
|
||||||
[loading]="service.http.loading" [page]="{show:false}" (change)="stChange($event)">
|
{ title: '', index: 'key', type: 'checkbox' },
|
||||||
|
{ title: '客户名称', index: 'enterpriseName' }
|
||||||
|
]"
|
||||||
|
[res]="{ reName: { list: 'data', total: 'data.total' } }"
|
||||||
|
[req]="{ process: beforeReq, params: { effectiveStatus: 2, newPartnerId: selectItem.id } }"
|
||||||
|
[loading]="service.http.loading"
|
||||||
|
[page]="{ show: false }"
|
||||||
|
(change)="stChange($event)"
|
||||||
|
>
|
||||||
</st>
|
</st>
|
||||||
</se>
|
</se>
|
||||||
<se label="生效节点" required>
|
<se label="生效节点" required>
|
||||||
<nz-radio-group [(ngModel)]="cannelItem.effectiveNode">
|
<nz-radio-group [(ngModel)]="cannelItem.effectiveNode">
|
||||||
<label nz-radio [nzValue]="1">修改成功后立即生效</label>
|
<label nz-radio [nzValue]="1">修改成功后立即生效</label>
|
||||||
<label nz-radio [nzValue]="2">CRM流程审核通过后生</label>
|
<!-- <label nz-radio [nzValue]="2">CRM流程审核通过后生效</label> -->
|
||||||
</nz-radio-group>
|
</nz-radio-group>
|
||||||
</se>
|
</se>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="text-center mt-md">客户转移:客户跟着上级合伙人转移一并到新渠道销售下,会同步发起CRM《客户转移》流程;不转移的,客户会与上级合伙人解绑,成为渠道销售的直客</p>
|
<p class="text-center mt-md"
|
||||||
|
>客户转移:客户跟着上级合伙人转移一并到新渠道销售下,会同步发起CRM《客户转移》流程;不转移的,客户会与上级合伙人解绑,成为渠道销售的直客</p
|
||||||
|
>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -4,13 +4,12 @@ import { Router } from '@angular/router';
|
|||||||
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
|
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFDateWidgetSchema, SFAutoCompleteWidgetSchema, SFSelectWidgetSchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFDateWidgetSchema, SFAutoCompleteWidgetSchema, SFSelectWidgetSchema } from '@delon/form';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { of } from 'rxjs';
|
import { BehaviorSubject, Observable, of } from 'rxjs';
|
||||||
import { AddCollectionInvoiceModalComponent } from 'src/app/routes/ticket-management/components/input-invoice/add-collection-invoice-modal/add-collection-invoice-modal.component';
|
import { AddCollectionInvoiceModalComponent } from 'src/app/routes/ticket-management/components/input-invoice/add-collection-invoice-modal/add-collection-invoice-modal.component';
|
||||||
|
|
||||||
import { PartnerListService } from '../../services/partner-list.service';
|
import { PartnerListService } from '../../services/partner-list.service';
|
||||||
import { PartnerAuditModalComponent } from '../partner-audit-modal/partner-audit-modal.component';
|
import { PartnerAuditModalComponent } from '../partner-audit-modal/partner-audit-modal.component';
|
||||||
import { map } from 'rxjs/operators';
|
import { catchError, debounceTime, map, switchMap } from 'rxjs/operators';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-partner-list',
|
selector: 'app-partner-list',
|
||||||
templateUrl: './partner-list.component.html',
|
templateUrl: './partner-list.component.html',
|
||||||
@ -24,7 +23,7 @@ export class PartnerListComponent {
|
|||||||
columns: STColumn[] = this.initST();
|
columns: STColumn[] = this.initST();
|
||||||
searchSchema: SFSchema = this.initSF();
|
searchSchema: SFSchema = this.initSF();
|
||||||
_$expand = false;
|
_$expand = false;
|
||||||
|
isLoading: boolean = false;
|
||||||
@ViewChild('editTemplate', { static: true })
|
@ViewChild('editTemplate', { static: true })
|
||||||
editTemplate: any;
|
editTemplate: any;
|
||||||
templateId: any;
|
templateId: any;
|
||||||
@ -36,13 +35,14 @@ export class PartnerListComponent {
|
|||||||
cannels: any[] = [];
|
cannels: any[] = [];
|
||||||
selectedRows: any[] = [];
|
selectedRows: any[] = [];
|
||||||
cannelItem: any = { channelId: null, effectiveNode: 1, enterpriseIdList: [], remark: '' };
|
cannelItem: any = { channelId: null, effectiveNode: 1, enterpriseIdList: [], remark: '' };
|
||||||
|
searchChange$ = new BehaviorSubject('');
|
||||||
selectItem: any = {};
|
selectItem: any = {};
|
||||||
|
|
||||||
constructor(public service: PartnerListService, private nzModalService: NzModalService, private router: Router) {
|
constructor(public service: PartnerListService, private nzModalService: NzModalService, private router: Router) {
|
||||||
this.loadSelectOptions();
|
this.loadSelectOptions();
|
||||||
}
|
}
|
||||||
|
ngOnInit(): void {
|
||||||
|
}
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
if (this.sf) {
|
if (this.sf) {
|
||||||
let params = { ...this.sf?.value };
|
let params = { ...this.sf?.value };
|
||||||
@ -55,18 +55,13 @@ export class PartnerListComponent {
|
|||||||
};
|
};
|
||||||
|
|
||||||
loadSelectOptions() {
|
loadSelectOptions() {
|
||||||
this.service.getRebateConfig({stateLocked: 1}).subscribe(res => {
|
this.service.getRebateConfig({ stateLocked: 1 }).subscribe(res => {
|
||||||
if (res) {
|
if (res) {
|
||||||
console.log(res);
|
console.log(res);
|
||||||
|
|
||||||
this.customers = res;
|
this.customers = res;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.service.getChannel().subscribe(res => {
|
|
||||||
if (res) {
|
|
||||||
this.cannels = res;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
auditPartner(item: any) {
|
auditPartner(item: any) {
|
||||||
@ -162,7 +157,7 @@ export class PartnerListComponent {
|
|||||||
const modal = this.nzModalService.confirm({
|
const modal = this.nzModalService.confirm({
|
||||||
nzTitle: '确定提交吗?',
|
nzTitle: '确定提交吗?',
|
||||||
nzOnOk: () => {
|
nzOnOk: () => {
|
||||||
this.cannelItem.enterpriseIdList = this.selectedRows.map(row => row.id);
|
this.cannelItem.enterpriseIdList = this.selectedRows.map(row => row.enterpriseId);
|
||||||
this.service
|
this.service
|
||||||
.request(this.service.$api_update_partner_channel_by_id, {
|
.request(this.service.$api_update_partner_channel_by_id, {
|
||||||
...this.cannelItem,
|
...this.cannelItem,
|
||||||
@ -236,10 +231,6 @@ export class PartnerListComponent {
|
|||||||
type: 'string',
|
type: 'string',
|
||||||
title: '合伙人名称'
|
title: '合伙人名称'
|
||||||
},
|
},
|
||||||
contactName: {
|
|
||||||
type: 'string',
|
|
||||||
title: '企业管理员'
|
|
||||||
},
|
|
||||||
contactMobile: {
|
contactMobile: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '手机号'
|
title: '手机号'
|
||||||
@ -252,9 +243,6 @@ export class PartnerListComponent {
|
|||||||
searchDebounceTime: 300,
|
searchDebounceTime: 300,
|
||||||
searchLoadingText: '搜索中...',
|
searchLoadingText: '搜索中...',
|
||||||
allowClear: true,
|
allowClear: true,
|
||||||
visibleIf: {
|
|
||||||
expand: (value: boolean) => value
|
|
||||||
},
|
|
||||||
onSearch: (q: any) => {
|
onSearch: (q: any) => {
|
||||||
let str = q.replace(/^\s+|\s+$/g, '');
|
let str = q.replace(/^\s+|\s+$/g, '');
|
||||||
if (str) {
|
if (str) {
|
||||||
@ -326,7 +314,7 @@ export class PartnerListComponent {
|
|||||||
{ value: '', label: '全部' },
|
{ value: '', label: '全部' },
|
||||||
{ value: '0', label: '未同步' },
|
{ value: '0', label: '未同步' },
|
||||||
{ value: 10, label: '同步失败' },
|
{ value: 10, label: '同步失败' },
|
||||||
{ value: 20, label: '同步成功' },
|
{ value: 20, label: '同步成功' }
|
||||||
],
|
],
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
@ -360,21 +348,21 @@ export class PartnerListComponent {
|
|||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
asyncData: () =>
|
asyncData: () =>
|
||||||
this.service.request(this.service.$api_get_rebate_config, {}, 'POST').pipe(
|
this.service.request(this.service.$api_get_rebate_config, {}, 'POST').pipe(
|
||||||
map(data => {
|
map(data => {
|
||||||
if(data) {
|
if (data) {
|
||||||
return data.map((m: any) => {
|
return data.map((m: any) => {
|
||||||
return { label: m.configName, value: m.id };
|
return { label: m.configName, value: m.id };
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
return [];
|
return [];
|
||||||
|
}
|
||||||
}
|
})
|
||||||
})
|
),
|
||||||
),
|
|
||||||
visibleIf: {
|
visibleIf: {
|
||||||
expand: (value: boolean) => value
|
expand: (value: boolean) => value
|
||||||
} } as SFDateWidgetSchema
|
}
|
||||||
|
} as SFDateWidgetSchema
|
||||||
},
|
},
|
||||||
lockedStatus: {
|
lockedStatus: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -412,13 +400,11 @@ export class PartnerListComponent {
|
|||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
title: '合伙人名称',
|
title: '合伙人名称',
|
||||||
index: 'enterpriseName',
|
render: 'enterpriseName',
|
||||||
width: 180,
|
width: 180
|
||||||
format: item => (item.partnerType ? `${item.enterpriseName || item.contactName}` : '')
|
|
||||||
},
|
},
|
||||||
{ title: '付款编码', index: 'payCode', width: 160 },
|
{ title: '付款编码', index: 'payCode', width: 160 },
|
||||||
{ title: '邀请码', index: 'invitationCode', className: 'text-center', width: 130 },
|
{ title: '邀请码', index: 'invitationCode', className: 'text-center', width: 130 },
|
||||||
{ title: '企业管理员', index: 'contactName', width: 150, format: item => (item.partnerType ? `${item.contactName}` : '') },
|
|
||||||
{ title: '手机号', index: 'contactMobile', className: 'text-center', width: 150 },
|
{ title: '手机号', index: 'contactMobile', className: 'text-center', width: 150 },
|
||||||
{ title: '类型', index: 'partnerType', className: 'text-center', width: 130, type: 'enum', enum: { 1: '企业', 2: '个人' } },
|
{ title: '类型', index: 'partnerType', className: 'text-center', width: 130, type: 'enum', enum: { 1: '企业', 2: '个人' } },
|
||||||
{ title: '注册渠道', index: 'source', type: 'enum', enum: { 1: '合伙人注册', 2: '平台添加' }, width: 130 },
|
{ title: '注册渠道', index: 'source', type: 'enum', enum: { 1: '合伙人注册', 2: '平台添加' }, width: 130 },
|
||||||
@ -518,4 +504,34 @@ export class PartnerListComponent {
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
onSearch(value: string): void {
|
||||||
|
this.isLoading = true;
|
||||||
|
let params: any = {};
|
||||||
|
if (value) {
|
||||||
|
console.log(+value);
|
||||||
|
// 数字
|
||||||
|
if (+value) {
|
||||||
|
params.phoneNumber = value;
|
||||||
|
} else {
|
||||||
|
// 中文
|
||||||
|
params.name = value;
|
||||||
|
}
|
||||||
|
this.service.request(this.service.$api_get_channel, params).subscribe(res => {
|
||||||
|
let NewList: { label: string; value: any; }[] = [];
|
||||||
|
let List = res.filter((i: any) => {
|
||||||
|
NewList.push({ label: `${i.name}/${i.telephone}`, value: i.id }) ;
|
||||||
|
});
|
||||||
|
this.cannels = NewList
|
||||||
|
});
|
||||||
|
this.searchChange$.next(value);
|
||||||
|
} else if(value === '') {
|
||||||
|
this.service.request(this.service.$api_get_channel, {name: '清空数X'}).subscribe(res => {
|
||||||
|
let NewList: { label: string; value: any; }[] = [];
|
||||||
|
let List = res.filter((i: any) => {
|
||||||
|
NewList.push({ label: `${i.name}/${i.telephone}`, value: i.id }) ;
|
||||||
|
});
|
||||||
|
this.cannels = NewList
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,8 @@
|
|||||||
import { Component, Input, OnInit, ViewChild } from '@angular/core';
|
import { Component, Input, OnInit, ViewChild } from '@angular/core';
|
||||||
import { SFComponent, SFSchema, SFValue } from '@delon/form';
|
import { SFComponent, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFValue } from '@delon/form';
|
||||||
import { ModalHelper } from '@delon/theme';
|
import { ModalHelper } from '@delon/theme';
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
||||||
|
import { of } from 'rxjs';
|
||||||
import { map } from 'rxjs/operators';
|
import { map } from 'rxjs/operators';
|
||||||
import { PartnerListService } from '../../services/partner-list.service';
|
import { PartnerListService } from '../../services/partner-list.service';
|
||||||
|
|
||||||
@ -24,7 +25,6 @@ export class PartnerAuditModalComponent implements OnInit {
|
|||||||
console.log(this.info);
|
console.log(this.info);
|
||||||
this.initSF(this.info);
|
this.initSF(this.info);
|
||||||
// asyncData: () => this.service.getChannel(),
|
// asyncData: () => this.service.getChannel(),
|
||||||
|
|
||||||
if(this.info.channelId) {
|
if(this.info.channelId) {
|
||||||
const value = [{
|
const value = [{
|
||||||
label: this.info.channelIdLabel,
|
label: this.info.channelIdLabel,
|
||||||
@ -38,25 +38,26 @@ export class PartnerAuditModalComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
} else {
|
|
||||||
console.log()
|
|
||||||
this.service.getChannel().pipe(map(data => {
|
|
||||||
console.log(data);
|
|
||||||
|
|
||||||
}))
|
|
||||||
this.service.getChannel().subscribe((res) => {
|
|
||||||
console.log(res);
|
|
||||||
const value :any= res;
|
|
||||||
setTimeout(() => {
|
|
||||||
if(this.sf) {
|
|
||||||
this.sf.getProperty('/channelId')!.schema.enum = value;
|
|
||||||
this.sf.getProperty('/channelId')!.widget.reset(value);
|
|
||||||
this.sf.setValue('/channelId', value);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
// else {
|
||||||
|
// console.log()
|
||||||
|
// this.service.getChannel().pipe(map(data => {
|
||||||
|
// console.log(data);
|
||||||
|
|
||||||
|
// }))
|
||||||
|
// this.service.getChannel().subscribe((res) => {
|
||||||
|
// console.log(res);
|
||||||
|
// const value :any= res;
|
||||||
|
// setTimeout(() => {
|
||||||
|
// if(this.sf) {
|
||||||
|
// this.sf.getProperty('/channelId2')!.schema.enum = value;
|
||||||
|
// this.sf.getProperty('/channelId2')!.widget.reset(value);
|
||||||
|
// this.sf.setValue('/channelId2', value);
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// })
|
||||||
|
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
initSF(user: any) {
|
initSF(user: any) {
|
||||||
@ -90,21 +91,36 @@ export class PartnerAuditModalComponent implements OnInit {
|
|||||||
default: this.info.isPass !== undefined ? this.info.isPass : true
|
default: this.info.isPass !== undefined ? this.info.isPass : true
|
||||||
},
|
},
|
||||||
channelId: {
|
channelId: {
|
||||||
title: '渠道销售',
|
|
||||||
type: 'string',
|
type: 'string',
|
||||||
|
title: '渠道销售',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
|
||||||
allowClear: true,
|
|
||||||
hidden: this.info.isPass === false,
|
hidden: this.info.isPass === false,
|
||||||
visibleIf: {
|
serverSearch: true,
|
||||||
status: value => value
|
searchDebounceTime: 300,
|
||||||
|
searchLoadingText: '搜索中...',
|
||||||
|
allowClear: true,
|
||||||
|
onSearch: (q: any) => {
|
||||||
|
let str = q.replace(/^\s+|\s+$/g, '');
|
||||||
|
let params :any= {}
|
||||||
|
if (str) {
|
||||||
|
console.log(+str);
|
||||||
|
if(+str) {
|
||||||
|
console.log('数字');
|
||||||
|
params.phoneNumber = str
|
||||||
|
} else {
|
||||||
|
console.log('中文');
|
||||||
|
params.name = str
|
||||||
|
}
|
||||||
|
return this.service
|
||||||
|
.request(this.service.$api_get_channel, params)
|
||||||
|
.pipe(map((res: any) => (res as any[]).map(i => ({ label: `${i.name}/${i.telephone}`, value: i.id } as SFSchemaEnum))))
|
||||||
|
.toPromise();
|
||||||
|
} else {
|
||||||
|
return of([]);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
errors: {
|
} as SFSelectWidgetSchema
|
||||||
required: ' '
|
|
||||||
}
|
|
||||||
},
|
|
||||||
default: user.channelId
|
|
||||||
},
|
},
|
||||||
approvalOpinion: {
|
approvalOpinion: {
|
||||||
title: '备注',
|
title: '备注',
|
||||||
@ -124,10 +140,8 @@ export class PartnerAuditModalComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
required: ['channelId', 'approvalOpinion']
|
required: [ 'approvalOpinion','channelId']
|
||||||
};
|
};
|
||||||
console.log('666');
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sure() {
|
sure() {
|
||||||
|
|||||||
@ -1,9 +1,7 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { STColumn, STComponent } from '@delon/abc/st';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
|
||||||
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort, ShipperBaseService } from '@shared';
|
import { ShipperBaseService } from '@shared';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { RebateManagementService } from '../../services/rebate-management.service';
|
import { RebateManagementService } from '../../services/rebate-management.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -27,10 +25,7 @@ export class ParterRebateManageMentParticularsComponent implements OnInit {
|
|||||||
resourceStatus: any;
|
resourceStatus: any;
|
||||||
data = this.service.$api_get_searchPageList;
|
data = this.service.$api_get_searchPageList;
|
||||||
constructor(
|
constructor(
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: RebateManagementService,
|
public service: RebateManagementService,
|
||||||
private modalService: NzModalService,
|
|
||||||
public shipperservice: ShipperBaseService
|
public shipperservice: ShipperBaseService
|
||||||
) {}
|
) {}
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -1,6 +1,4 @@
|
|||||||
import { ModalHelper } from '@delon/theme';
|
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort, ShipperBaseService } from '@shared';
|
import { processSingleSort, ShipperBaseService } from '@shared';
|
||||||
@ -25,8 +23,6 @@ export class ParterRebateManageMentRecordComponent implements OnInit {
|
|||||||
_$expand = false;
|
_$expand = false;
|
||||||
data = [{ name1: 1111 }];
|
data = [{ name1: 1111 }];
|
||||||
constructor(
|
constructor(
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: RebateManagementService,
|
public service: RebateManagementService,
|
||||||
private modal: NzModalService,
|
private modal: NzModalService,
|
||||||
public shipperservice: ShipperBaseService,
|
public shipperservice: ShipperBaseService,
|
||||||
|
|||||||
@ -54,12 +54,24 @@ export class ParterRebateManageMentAddPartnerListComponent implements OnInit {
|
|||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: '添加',
|
text: '添加',
|
||||||
|
iifBehavior: 'disabled',
|
||||||
|
iif: (item:any) => {
|
||||||
|
return this.filterArr(item)
|
||||||
|
},
|
||||||
click: _record => this.add(_record),
|
click: _record => this.add(_record),
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
filterArr (item: { id: any; }) {
|
||||||
|
let real = true
|
||||||
|
this.i.forEach((element:any) => {
|
||||||
|
if(element.id == item.id) {
|
||||||
|
real = false
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return real
|
||||||
|
}
|
||||||
get reqParams() {
|
get reqParams() {
|
||||||
// signStatus固定传20 代表签约完成 signStatus: 20
|
// signStatus固定传20 代表签约完成 signStatus: 20
|
||||||
let params: any = { ...this.sf?.value, };
|
let params: any = { ...this.sf?.value, };
|
||||||
@ -78,6 +90,8 @@ export class ParterRebateManageMentAddPartnerListComponent implements OnInit {
|
|||||||
) {}
|
) {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
|
console.log(this.i);
|
||||||
|
|
||||||
this.initSF();
|
this.initSF();
|
||||||
}
|
}
|
||||||
initSF() {
|
initSF() {
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-02-24 20:09:49
|
* @Date : 2022-02-24 20:09:49
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-05-05 17:04:31
|
* @LastEditTime : 2022-05-07 15:42:10
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\rebate-management\\components\\rebate-setting\\add\\add.component.html
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\rebate-management\\components\\rebate-setting\\add\\add.component.html
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
-->
|
-->
|
||||||
@ -58,7 +58,7 @@
|
|||||||
<nz-option nzValue="2" nzLabel="新注册合伙人"></nz-option>
|
<nz-option nzValue="2" nzLabel="新注册合伙人"></nz-option>
|
||||||
<nz-option nzValue="3" nzLabel="自定义合伙人"></nz-option>
|
<nz-option nzValue="3" nzLabel="自定义合伙人"></nz-option>
|
||||||
</nz-select>
|
</nz-select>
|
||||||
<span *ngIf="addStatus" style="padding-left: 15px; color: #0000ff" (click)="add()">添加</span>
|
<span *ngIf="addStatus" style="padding-left: 15px; color: #0000ff" (click)="add(this.partnerPeopleList)">添加</span>
|
||||||
<st
|
<st
|
||||||
*ngIf="partnerPeopleList?.length > 0"
|
*ngIf="partnerPeopleList?.length > 0"
|
||||||
#st
|
#st
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
* @Author : Shiming
|
* @Author : Shiming
|
||||||
* @Date : 2022-03-21 09:26:45
|
* @Date : 2022-03-21 09:26:45
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @LastEditTime : 2022-05-05 14:04:53
|
* @LastEditTime : 2022-05-07 15:38:49
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\rebate-management\\components\\rebate-setting\\add\\add.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\rebate-management\\components\\rebate-setting\\add\\add.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
@ -127,59 +127,70 @@ export class ParterRebateManageMentAddComponent implements OnInit {
|
|||||||
if (res) {
|
if (res) {
|
||||||
if (Array.isArray(res)) {
|
if (Array.isArray(res)) {
|
||||||
this.partnerPeopleList = this.partnerPeopleList.concat(res);
|
this.partnerPeopleList = this.partnerPeopleList.concat(res);
|
||||||
|
this.partnerPeopleList = [...this.setArr(this.partnerPeopleList, 'id')];
|
||||||
res.forEach((ele: any) => {
|
res.forEach((ele: any) => {
|
||||||
this.partnerId.push(ele?.id);
|
this.partnerId.push(ele?.id);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.partnerPeopleList = this.partnerPeopleList.concat(res);
|
this.partnerPeopleList = this.partnerPeopleList.concat(res);
|
||||||
|
this.partnerPeopleList = [...this.setArr(this.partnerPeopleList, 'id')];
|
||||||
this.partnerId.push(res?.id);
|
this.partnerId.push(res?.id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
// 数组去重
|
||||||
|
setArr(arr: any[], id: string) {
|
||||||
|
let obj: any = {};
|
||||||
|
const arrays = arr.reduce((setArr, item) => {
|
||||||
|
obj[item[id]] ? '' : (obj[item[id]] = true && setArr.push(item));
|
||||||
|
return setArr;
|
||||||
|
}, []);
|
||||||
|
return arrays;
|
||||||
|
}
|
||||||
delete(item: any) {
|
delete(item: any) {
|
||||||
this.partnerPeopleList = this.partnerPeopleList.filter((d: any, i: any) => {
|
this.partnerPeopleList = this.partnerPeopleList.filter((d: any, i: any) => {
|
||||||
return item.id != d.id;
|
return item.id != d.id;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
if(!this.configName) {
|
if (!this.configName) {
|
||||||
this.service.msgSrv.warning('请输入配置名称!');
|
this.service.msgSrv.warning('请输入配置名称!');
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
if(!this.accountingRate) {
|
if (!this.accountingRate) {
|
||||||
this.service.msgSrv.warning('请输入固定结算费率!');
|
this.service.msgSrv.warning('请输入固定结算费率!');
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
if(!this.partnerType) {
|
if (!this.partnerType) {
|
||||||
this.service.msgSrv.warning('请选择合伙人范围!');
|
this.service.msgSrv.warning('请选择合伙人范围!');
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
if(!this.priority) {
|
if (!this.priority) {
|
||||||
this.service.msgSrv.warning('请选择优先级!');
|
this.service.msgSrv.warning('请选择优先级!');
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
if(!this.sf?.value.ruleDescription) {
|
if (!this.sf?.value.ruleDescription) {
|
||||||
this.service.msgSrv.warning('请输入规则说明!');
|
this.service.msgSrv.warning('请输入规则说明!');
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
if(!this.remark) {
|
if (!this.remark) {
|
||||||
this.service.msgSrv.warning('请输入备注!');
|
this.service.msgSrv.warning('请输入备注!');
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
if(this.partnerType == '3' && this.partnerPeopleList?.length == 0) {
|
if (this.partnerType == '3' && this.partnerPeopleList?.length == 0) {
|
||||||
this.service.msgSrv.warning('请选择合伙人!');
|
this.service.msgSrv.warning('请选择合伙人!');
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
let real = false;
|
let real = false;
|
||||||
if(this.configType == '2') {
|
if (this.configType == '2') {
|
||||||
this.table.data.forEach((element: any) => {
|
this.table.data.forEach((element: any) => {
|
||||||
if (element.startAmount > element.endAmount) {
|
if (element.startAmount > element.endAmount) {
|
||||||
real = true;
|
real = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if (real) {
|
if (real) {
|
||||||
this.service.msgSrv.warning('初始业务量不能超过到达业务量!');
|
this.service.msgSrv.warning('初始业务量不能超过到达业务量!');
|
||||||
return;
|
return;
|
||||||
|
|||||||
@ -1,12 +1,10 @@
|
|||||||
import { ModalHelper } from '@delon/theme';
|
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent } from '@delon/abc/st';
|
||||||
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { processSingleSort, ShipperBaseService } from '@shared';
|
import { ShipperBaseService } from '@shared';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { RebateManagementService } from '../../services/rebate-management.service';
|
import { RebateManagementService } from '../../services/rebate-management.service';
|
||||||
import { ParterRebateManageMenRecordDetailComponent } from '../../model/record-detail/record-detail.component';
|
|
||||||
import { ParterRebateManageMenAbnormalFeedbackComponent } from '../../model/abnormal-feedback/abnormal-feedback.component';
|
import { ParterRebateManageMenAbnormalFeedbackComponent } from '../../model/abnormal-feedback/abnormal-feedback.component';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -25,19 +23,18 @@ export class ParterRebateManageMentSettingComponent implements OnInit {
|
|||||||
_$expand = false;
|
_$expand = false;
|
||||||
constructor(
|
constructor(
|
||||||
public router: Router,
|
public router: Router,
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: RebateManagementService,
|
public service: RebateManagementService,
|
||||||
private modal: NzModalService,
|
private modal: NzModalService,
|
||||||
public shipperservice: ShipperBaseService,
|
public shipperservice: ShipperBaseService
|
||||||
) {}
|
) {}
|
||||||
/**
|
/**
|
||||||
* 查询参数
|
* 查询参数
|
||||||
*/
|
*/
|
||||||
get reqParams() {
|
get reqParams() {
|
||||||
const params: any = Object.assign({}, this.sf?.value || {});
|
const params: any = Object.assign({}, this.sf?.value || {});
|
||||||
return {
|
return {
|
||||||
...params,
|
...params
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -49,21 +46,20 @@ export class ParterRebateManageMentSettingComponent implements OnInit {
|
|||||||
properties: {
|
properties: {
|
||||||
configName: {
|
configName: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '模板名称',
|
title: '模板名称'
|
||||||
},
|
},
|
||||||
stateLocked: {
|
stateLocked: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '状态',
|
title: '状态',
|
||||||
enum: [
|
enum: [
|
||||||
{label: '全部', value: ''},
|
{ label: '全部', value: '' },
|
||||||
{label: '生效中', value: 1},
|
{ label: '生效中', value: 1 },
|
||||||
{label: '失效', value: 0},
|
{ label: '失效', value: 0 }
|
||||||
],
|
],
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select'
|
||||||
},
|
}
|
||||||
|
}
|
||||||
},
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
@ -79,43 +75,42 @@ export class ParterRebateManageMentSettingComponent implements OnInit {
|
|||||||
{
|
{
|
||||||
title: '模板名称',
|
title: '模板名称',
|
||||||
index: 'configName',
|
index: 'configName',
|
||||||
width: '200px',
|
width: '200px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '等级类型',
|
title: '等级类型',
|
||||||
render: 'configType',
|
render: 'configType',
|
||||||
width: '200px',
|
width: '200px'
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '备注',
|
title: '备注',
|
||||||
index: 'remark',
|
index: 'remark',
|
||||||
width: '250px',
|
width: '250px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '合伙人范围',
|
title: '合伙人范围',
|
||||||
render: 'partnerType',
|
render: 'partnerType',
|
||||||
width: '200px',
|
width: '200px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '创建时间',
|
title: '创建时间',
|
||||||
index: 'enableTime',
|
index: 'enableTime',
|
||||||
width: '200px',
|
width: '200px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '生效时间',
|
title: '生效时间',
|
||||||
index: 'enableTime',
|
index: 'enableTime',
|
||||||
width: '200px',
|
width: '200px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '优先级',
|
title: '优先级',
|
||||||
index: 'priority',
|
index: 'priority',
|
||||||
width: '100px',
|
width: '100px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '状态',
|
title: '状态',
|
||||||
render: 'stateLocked',
|
render: 'stateLocked',
|
||||||
width: '100px',
|
width: '100px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '操作',
|
title: '操作',
|
||||||
@ -126,20 +121,24 @@ export class ParterRebateManageMentSettingComponent implements OnInit {
|
|||||||
{
|
{
|
||||||
text: '查看',
|
text: '查看',
|
||||||
acl: { ability: ['REBATE-SETTING-detail'] },
|
acl: { ability: ['REBATE-SETTING-detail'] },
|
||||||
click: _record => this.configAction(_record),
|
click: _record => this.configAction(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '禁用',
|
text: '禁用',
|
||||||
acl: { ability: ['REBATE-SETTING-forbidden'] },
|
acl: { ability: ['REBATE-SETTING-forbidden'] },
|
||||||
iif: (_record) =>{ return _record.stateLocked == true && (_record.partnerType == 3 || _record.partnerType == 2)},
|
iif: _record => {
|
||||||
click: _record => this.viewEvaluate(_record),
|
return _record.stateLocked == true && (_record.partnerType == 3 || _record.partnerType == 2);
|
||||||
|
},
|
||||||
|
click: _record => this.viewEvaluate(_record)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: '启用',
|
text: '启用',
|
||||||
acl: { ability: ['REBATE-SETTING-startUseing'] },
|
acl: { ability: ['REBATE-SETTING-startUseing'] },
|
||||||
iif: (_record) =>{ return _record.stateLocked == false},
|
iif: _record => {
|
||||||
click: _record => this.viewEvaluate(_record),
|
return _record.stateLocked == false;
|
||||||
},
|
},
|
||||||
|
click: _record => this.viewEvaluate(_record)
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@ -147,51 +146,51 @@ export class ParterRebateManageMentSettingComponent implements OnInit {
|
|||||||
/**
|
/**
|
||||||
*禁用
|
*禁用
|
||||||
*/
|
*/
|
||||||
viewEvaluate(item: any) {
|
viewEvaluate(item: any) {
|
||||||
console.log(item.stateLocked);
|
console.log(item.stateLocked);
|
||||||
let title = ''
|
let title = '';
|
||||||
let stateLocked: boolean;
|
let stateLocked: boolean;
|
||||||
if(item.stateLocked) {
|
if (item.stateLocked) {
|
||||||
title = '是否禁用该配置?'
|
title = '是否禁用该配置?';
|
||||||
stateLocked = false
|
stateLocked = false;
|
||||||
} else {
|
} else {
|
||||||
title = '是否启用该配置?'
|
title = '是否启用该配置?';
|
||||||
stateLocked = true
|
stateLocked = true;
|
||||||
}
|
}
|
||||||
this.modal.confirm({
|
this.modal.confirm({
|
||||||
nzTitle: title,
|
nzTitle: title,
|
||||||
nzOnOk: () => {
|
nzOnOk: () => {
|
||||||
const params = {
|
const params = {
|
||||||
id: item?.id,
|
id: item?.id,
|
||||||
stateLocked: stateLocked,
|
stateLocked: stateLocked
|
||||||
}
|
};
|
||||||
this.service.request(this.service.$api_set_updateRebateConfig,params).subscribe((res: any) => {
|
this.service.request(this.service.$api_set_updateRebateConfig, params).subscribe((res: any) => {
|
||||||
if(res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('设置成功!')
|
this.service.msgSrv.success('设置成功!');
|
||||||
this.st.reload();
|
this.st.reload();
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
*查看
|
*查看
|
||||||
*/
|
*/
|
||||||
feedback(item?: any) {
|
feedback(item?: any) {
|
||||||
const modal = this.modal.create({
|
const modal = this.modal.create({
|
||||||
nzTitle: '查看',
|
nzTitle: '查看',
|
||||||
nzWidth: 580,
|
nzWidth: 580,
|
||||||
nzContent: ParterRebateManageMenAbnormalFeedbackComponent,
|
nzContent: ParterRebateManageMenAbnormalFeedbackComponent,
|
||||||
nzComponentParams: { i: item },
|
nzComponentParams: { i: item },
|
||||||
nzFooter: null
|
nzFooter: null
|
||||||
});
|
});
|
||||||
modal.afterClose.subscribe((res: any) => {
|
modal.afterClose.subscribe((res: any) => {
|
||||||
if (res) {
|
if (res) {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
configAction(value?: any) {
|
configAction(value?: any) {
|
||||||
this.router.navigate(['/partner/rebate/setting/add/', '0'], {queryParams: value})
|
this.router.navigate(['/partner/rebate/setting/add/', '0'], { queryParams: value });
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 重置表单
|
* 重置表单
|
||||||
|
|||||||
@ -8,15 +8,11 @@
|
|||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\rebate-management\\model\\abnormal-feedback\\abnormal-feedback.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\partner\\rebate-management\\model\\abnormal-feedback\\abnormal-feedback.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
import { ModalHelper } from '@delon/theme';
|
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { SFComponent, SFSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { ShipperBaseService } from '@shared';
|
||||||
import { SFComponent, SFDateWidgetSchema, SFSchema, SFSelectWidgetSchema, SFTextareaWidgetSchema, SFUISchema } from '@delon/form';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { processSingleSort, ShipperBaseService } from '@shared';
|
|
||||||
import { NzModalService, NzModalRef } from 'ng-zorro-antd/modal';
|
|
||||||
import { RebateManagementService } from '../../services/rebate-management.service';
|
import { RebateManagementService } from '../../services/rebate-management.service';
|
||||||
import { NzButtonSize } from 'ng-zorro-antd/button';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-parter-channel-rebate-management-abnormal-feedback',
|
selector: 'app-parter-channel-rebate-management-abnormal-feedback',
|
||||||
@ -29,15 +25,7 @@ export class ParterRebateManageMenAbnormalFeedbackComponent implements OnInit {
|
|||||||
sf!: SFComponent;
|
sf!: SFComponent;
|
||||||
i!: any;
|
i!: any;
|
||||||
data = [{ name1: 1111 }];
|
data = [{ name1: 1111 }];
|
||||||
constructor(
|
constructor(public service: RebateManagementService, public shipperservice: ShipperBaseService, public modalRef: NzModalRef) {}
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: RebateManagementService,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
public shipperservice: ShipperBaseService,
|
|
||||||
public modalRef: NzModalRef,
|
|
||||||
) {}
|
|
||||||
|
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -53,20 +41,19 @@ export class ParterRebateManageMenAbnormalFeedbackComponent implements OnInit {
|
|||||||
ui: {
|
ui: {
|
||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
autosize: { minRows: 3, maxRows: 6 },
|
autosize: { minRows: 3, maxRows: 6 },
|
||||||
placeholder:'请不要超过50个字'
|
placeholder: '请不要超过50个字'
|
||||||
} as SFTextareaWidgetSchema,
|
} as SFTextareaWidgetSchema
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 60,
|
spanLabelFixed: 60,
|
||||||
grid: { span: 16 },
|
grid: { span: 16 }
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
close() {
|
close() {
|
||||||
this.modalRef.destroy()
|
this.modalRef.destroy();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,10 +1,8 @@
|
|||||||
import { ModalHelper } from '@delon/theme';
|
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { STColumn, STComponent } from '@delon/abc/st';
|
||||||
import { STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { SFComponent, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFDateWidgetSchema, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
import { ShipperBaseService } from '@shared';
|
||||||
import { processSingleSort, ShipperBaseService } from '@shared';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { NzModalService, NzModalRef } from 'ng-zorro-antd/modal';
|
|
||||||
import { RebateManagementService } from '../../services/rebate-management.service';
|
import { RebateManagementService } from '../../services/rebate-management.service';
|
||||||
import { NzButtonSize } from 'ng-zorro-antd/button';
|
import { NzButtonSize } from 'ng-zorro-antd/button';
|
||||||
|
|
||||||
@ -24,36 +22,29 @@ export class ParterRebateManageMenRecordDetailComponent implements OnInit {
|
|||||||
size: NzButtonSize = 'large';
|
size: NzButtonSize = 'large';
|
||||||
_$expand = false;
|
_$expand = false;
|
||||||
data = [{ name1: 1111 }];
|
data = [{ name1: 1111 }];
|
||||||
constructor(
|
constructor(public service: RebateManagementService, public shipperservice: ShipperBaseService, public modalRef: NzModalRef) {}
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
public service: RebateManagementService,
|
|
||||||
private modalService: NzModalService,
|
|
||||||
public shipperservice: ShipperBaseService,
|
|
||||||
public modalRef: NzModalRef,
|
|
||||||
) {}
|
|
||||||
/**
|
/**
|
||||||
* 查询字段个数
|
* 查询字段个数
|
||||||
*/
|
*/
|
||||||
get queryFieldCount(): number {
|
get queryFieldCount(): number {
|
||||||
return Object.keys(this.schema?.properties || {}).length;
|
return Object.keys(this.schema?.properties || {}).length;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 伸缩查询条件
|
|
||||||
*/
|
|
||||||
expandToggle(): void {
|
|
||||||
this._$expand = !this._$expand;
|
|
||||||
this.sf?.setValue('/_$expand', this._$expand);
|
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 查询参数
|
* 伸缩查询条件
|
||||||
*/
|
*/
|
||||||
get reqParams() {
|
expandToggle(): void {
|
||||||
|
this._$expand = !this._$expand;
|
||||||
|
this.sf?.setValue('/_$expand', this._$expand);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 查询参数
|
||||||
|
*/
|
||||||
|
get reqParams() {
|
||||||
const params: any = Object.assign({}, this.sf?.value || {});
|
const params: any = Object.assign({}, this.sf?.value || {});
|
||||||
delete params._$expand;
|
delete params._$expand;
|
||||||
return {
|
return {
|
||||||
...params,
|
...params
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
@ -72,8 +63,8 @@ export class ParterRebateManageMenRecordDetailComponent implements OnInit {
|
|||||||
allowClear: true,
|
allowClear: true,
|
||||||
asyncData: () => this.shipperservice.getNetworkFreightForwarder(),
|
asyncData: () => this.shipperservice.getNetworkFreightForwarder(),
|
||||||
change: (value: any) => {
|
change: (value: any) => {
|
||||||
console.log(value)
|
console.log(value);
|
||||||
this.st.reload()
|
this.st.reload();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -85,11 +76,11 @@ export class ParterRebateManageMenRecordDetailComponent implements OnInit {
|
|||||||
params: { dictKey: 'overall:payment:status' },
|
params: { dictKey: 'overall:payment:status' },
|
||||||
containsAllLabel: true,
|
containsAllLabel: true,
|
||||||
change: (value: any) => {
|
change: (value: any) => {
|
||||||
console.log(value)
|
console.log(value);
|
||||||
this.st.reload()
|
this.st.reload();
|
||||||
}
|
}
|
||||||
} as SFSelectWidgetSchema
|
} as SFSelectWidgetSchema
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
@ -165,7 +156,6 @@ export class ParterRebateManageMenRecordDetailComponent implements OnInit {
|
|||||||
this.st.load(1);
|
this.st.load(1);
|
||||||
}
|
}
|
||||||
close() {
|
close() {
|
||||||
this.modalRef.destroy()
|
this.modalRef.destroy();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { FreightAccountService } from 'src/app/routes/financial-management/services/freight-account.service';
|
|
||||||
import { RecordedService } from '../../services/recorded.service';
|
import { RecordedService } from '../../services/recorded.service';
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { Router, ActivatedRoute } from '@angular/router';
|
|
||||||
import { cacheConf } from '@conf/cache.conf';
|
import { cacheConf } from '@conf/cache.conf';
|
||||||
import { STColumn, STComponent, STChange, STData } from '@delon/abc/st';
|
import { STColumn, STComponent, STChange, STData } from '@delon/abc/st';
|
||||||
import { SFUISchema, SFSchema, SFComponent } from '@delon/form';
|
import { SFUISchema, SFSchema, SFComponent } from '@delon/form';
|
||||||
@ -28,7 +27,7 @@ export class CarAddmodalComponent implements OnInit {
|
|||||||
constructor(
|
constructor(
|
||||||
private modal: NzModalRef,
|
private modal: NzModalRef,
|
||||||
private eaCacheSrv: EACacheService,
|
private eaCacheSrv: EACacheService,
|
||||||
public service: SupplyManagementService, private router: Router, private ar: ActivatedRoute,
|
public service: SupplyManagementService,
|
||||||
private modalHelper: ModalHelper
|
private modalHelper: ModalHelper
|
||||||
) { }
|
) { }
|
||||||
|
|
||||||
|
|||||||
@ -39,7 +39,7 @@
|
|||||||
name="loadName{{ idx }}" maxlength="30" placeholder="请输入联系人姓名" />
|
name="loadName{{ idx }}" maxlength="30" placeholder="请输入联系人姓名" />
|
||||||
</nz-form-control>
|
</nz-form-control>
|
||||||
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人电话'">
|
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人电话'">
|
||||||
<input nz-input [(ngModel)]="data1.contractTelephone" maxlength="11"
|
<input nz-input [(ngModel)]="data1.contractTelephone" maxlength="11" (ngModelChange)="onChangePhone(data1.contractTelephone)"
|
||||||
formControlName="loadPhone{{ idx }}" name="loadPhone{{ idx }}" placeholder="请输入联系人电话" />
|
formControlName="loadPhone{{ idx }}" name="loadPhone{{ idx }}" placeholder="请输入联系人电话" />
|
||||||
</nz-form-control>
|
</nz-form-control>
|
||||||
</div>
|
</div>
|
||||||
@ -74,7 +74,7 @@
|
|||||||
name="unloadAddress{{ idx }}" placeholder="请输入联系人姓名" />
|
name="unloadAddress{{ idx }}" placeholder="请输入联系人姓名" />
|
||||||
</nz-form-control>
|
</nz-form-control>
|
||||||
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人电话'">
|
<nz-form-control [nzSpan]="12" [nzErrorTip]="'请输入联系人电话'">
|
||||||
<input nz-input [(ngModel)]="data2.contractTelephone"
|
<input nz-input [(ngModel)]="data2.contractTelephone" (ngModelChange)="onChangePhone(data2.contractTelephone)"
|
||||||
formControlName="unloadPhone{{ idx }}" name="unloadAddress{{ idx }}" maxlength="11"
|
formControlName="unloadPhone{{ idx }}" name="unloadAddress{{ idx }}" maxlength="11"
|
||||||
placeholder="请输入联系人电话" />
|
placeholder="请输入联系人电话" />
|
||||||
</nz-form-control>
|
</nz-form-control>
|
||||||
|
|||||||
@ -10,7 +10,6 @@ import {
|
|||||||
SFTextareaWidgetSchema,
|
SFTextareaWidgetSchema,
|
||||||
SFUISchema
|
SFUISchema
|
||||||
} from '@delon/form';
|
} from '@delon/form';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { AmapPoiPickerComponent, AmapService, ShipperBaseService } from '@shared';
|
import { AmapPoiPickerComponent, AmapService, ShipperBaseService } from '@shared';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { PublishGoodsChooseFamifiarComponent } from '../choose-famifiar/choose-famifiar.component';
|
import { PublishGoodsChooseFamifiarComponent } from '../choose-famifiar/choose-famifiar.component';
|
||||||
@ -20,7 +19,6 @@ import { of } from 'rxjs';
|
|||||||
import { PublishSuccessComponent } from '../onecar-publish/publish-success/publish-success.component';
|
import { PublishSuccessComponent } from '../onecar-publish/publish-success/publish-success.component';
|
||||||
import { PublishAddressListComponent } from '../onecar-publish/address-list/address-list.component';
|
import { PublishAddressListComponent } from '../onecar-publish/address-list/address-list.component';
|
||||||
import { TranAgreementComponent } from '../tran-agreement/tran-agreement.component';
|
import { TranAgreementComponent } from '../tran-agreement/tran-agreement.component';
|
||||||
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
|
||||||
import { SupplyManagementQrcodePageComponent } from '../qrcode-page/qrcode-page.component';
|
import { SupplyManagementQrcodePageComponent } from '../qrcode-page/qrcode-page.component';
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-publish-goods-bulk-publish',
|
selector: 'app-publish-goods-bulk-publish',
|
||||||
@ -56,8 +54,8 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
maxTrainNumber: 99999,
|
maxTrainNumber: 99999,
|
||||||
maxFreight: 9999999
|
maxFreight: 9999999
|
||||||
};
|
};
|
||||||
|
patternStr = `^((13[0-9])|(14[0-1,4-9])|(15([0-3,5-9]))|(17[0-8])|(18[0-9])|(19[0-3,5-9])|(16[2,5,6,7]))\\d{8}$`;
|
||||||
constructor(
|
constructor(
|
||||||
private http: _HttpClient,
|
|
||||||
fb: FormBuilder,
|
fb: FormBuilder,
|
||||||
private router: Router,
|
private router: Router,
|
||||||
private route: ActivatedRoute,
|
private route: ActivatedRoute,
|
||||||
@ -69,10 +67,10 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
this.validateForm1 = fb.group({
|
this.validateForm1 = fb.group({
|
||||||
loadAddress0: [null, [Validators.required]],
|
loadAddress0: [null, [Validators.required]],
|
||||||
loadName0: [null, [Validators.required]],
|
loadName0: [null, [Validators.required]],
|
||||||
loadPhone0: [null, [Validators.required, Validators.pattern('^[0-9]*$')]],
|
loadPhone0: [null, [Validators.required, Validators.pattern(this.patternStr)]],
|
||||||
unloadAddress0: [null, [Validators.required]],
|
unloadAddress0: [null, [Validators.required]],
|
||||||
unloadName0: [null, [Validators.required]],
|
unloadName0: [null, [Validators.required]],
|
||||||
unloadPhone0: [null, [Validators.required, Validators.pattern('^[0-9]*$')]]
|
unloadPhone0: [null, [Validators.required, Validators.pattern(this.patternStr)]]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ViewChild('sf1', { static: false }) sf1!: SFComponent;
|
@ViewChild('sf1', { static: false }) sf1!: SFComponent;
|
||||||
@ -221,13 +219,23 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
goodsName: {
|
||||||
|
type: 'string',
|
||||||
|
title: '货物名称',
|
||||||
|
ui: {
|
||||||
|
// hidden: true,
|
||||||
|
// visibleIf: {
|
||||||
|
// goodsTypeName: (value: any) => value && value !== '其它'
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
},
|
||||||
goodsTypeId: {
|
goodsTypeId: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '货物类型',
|
title: '',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
errors: { required: '请选择货物类型' },
|
errors: { required: '请选择货物名称' },
|
||||||
asyncData: () =>
|
asyncData: () =>
|
||||||
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
||||||
map((data: any) => {
|
map((data: any) => {
|
||||||
@ -249,47 +257,38 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
hidden: true
|
hidden: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
goodsNameId: {
|
|
||||||
type: 'string',
|
// goodsName1: {
|
||||||
title: '',
|
// type: 'string',
|
||||||
ui: {
|
// title: '',
|
||||||
widget: 'select',
|
// maxLength: 20,
|
||||||
placeholder: '请选择',
|
// ui: {
|
||||||
errors: { required: '请填写货物类型' },
|
// errors: { required: '请填写货物名称' },
|
||||||
change: (value: any, data: any) => {
|
// visibleIf: {
|
||||||
this.sf3.setValue('/goodsName', data.label);
|
// goodsTypeName: (value: any) => value && value === '其它'
|
||||||
},
|
// },
|
||||||
visibleIf: {
|
// blur: (value: any) => {
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
// this.checkGoodsName();
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
goodsName: {
|
// goodsNameId: {
|
||||||
type: 'string',
|
// type: 'string',
|
||||||
title: '',
|
// title: '',
|
||||||
ui: {
|
// ui: {
|
||||||
hidden: true,
|
// widget: 'select',
|
||||||
visibleIf: {
|
// placeholder: '请选择',
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
// errors: { required: '请填写货物名称' },
|
||||||
}
|
// change: (value: any, data: any) => {
|
||||||
}
|
// // this.sf3.setValue('/goodsName', data.label);
|
||||||
},
|
// },
|
||||||
goodsName1: {
|
// visibleIf: {
|
||||||
type: 'string',
|
// goodsTypeName: (value: any) => value && value !== '其它'
|
||||||
title: '',
|
// }
|
||||||
maxLength: 20,
|
// }
|
||||||
ui: {
|
// },
|
||||||
errors: { required: '请填写货物类型' },
|
|
||||||
visibleIf: {
|
|
||||||
goodsTypeName: (value: any) => value && value === '其它'
|
|
||||||
},
|
|
||||||
blur: (value: any) => {
|
|
||||||
this.checkGoodsName();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
required: ['goodsTypeId', 'goodsName', 'goodsNameId', 'goodsName1']
|
required: ['goodsTypeId', 'goodsName', ]
|
||||||
};
|
};
|
||||||
this.ui3 = {
|
this.ui3 = {
|
||||||
'*': {
|
'*': {
|
||||||
@ -710,10 +709,6 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
const LoadingList = this.startInfo.concat(this.endInfo);
|
const LoadingList = this.startInfo.concat(this.endInfo);
|
||||||
// 货物信息
|
// 货物信息
|
||||||
const sf3Values = { ...this.sf3.value };
|
const sf3Values = { ...this.sf3.value };
|
||||||
if (sf3Values.goodsTypeName === '其它') {
|
|
||||||
sf3Values.goodsName = sf3Values.goodsName1;
|
|
||||||
delete sf3Values.goodsName1;
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carModel.includes('999')) {
|
if (this.sf4.value.carModel.includes('999')) {
|
||||||
this.sf4.value.carModel = ['999'];
|
this.sf4.value.carModel = ['999'];
|
||||||
}
|
}
|
||||||
@ -1170,4 +1165,17 @@ export class SupplyManagementBulkPublishComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
onChangePhone(value: string): void {
|
||||||
|
console.log(value);
|
||||||
|
|
||||||
|
this.updateValue(value);
|
||||||
|
}
|
||||||
|
updateValue(value: string): void {
|
||||||
|
const reg = /^-?(0|[1-9][0-9]*)(\.[0-9]*)?$/;
|
||||||
|
// if ((!isNaN(+value) && reg.test(value)) || value === '' || value === '-') {
|
||||||
|
// this.value = value;
|
||||||
|
// }
|
||||||
|
// this.inputElement!.nativeElement.value = this.value;
|
||||||
|
// this.updateTitle();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,7 +17,7 @@
|
|||||||
<div class="card-title">装卸货信息<span class="tip-font">预计公里数:<em>{{ totalDistance }}km</em>,预计行程耗时:<em>{{ totalTime }}小时</em></span>
|
<div class="card-title">装卸货信息<span class="tip-font">预计公里数:<em>{{ totalDistance }}km</em>,预计行程耗时:<em>{{ totalTime }}小时</em></span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<form #ngForm="ngForm" nz-form role="form">
|
<form #ngForm="ngForm" [formGroup]="validateForm1" nz-form role="form">
|
||||||
<div nz-row [nzGutter]="24">
|
<div nz-row [nzGutter]="24">
|
||||||
<div nz-col [nzSpan]="10">
|
<div nz-col [nzSpan]="10">
|
||||||
<div *ngFor="let data1 of startInfo; let idx = index">
|
<div *ngFor="let data1 of startInfo; let idx = index">
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { NgForm } from '@angular/forms';
|
import { FormBuilder, FormGroup, Validators, FormControl, NgForm } from '@angular/forms';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import {
|
import {
|
||||||
SFComponent,
|
SFComponent,
|
||||||
SFSchema,
|
SFSchema,
|
||||||
@ -9,7 +9,6 @@ import {
|
|||||||
SFTextareaWidgetSchema,
|
SFTextareaWidgetSchema,
|
||||||
SFUISchema
|
SFUISchema
|
||||||
} from '@delon/form';
|
} from '@delon/form';
|
||||||
import { SettingsService, _HttpClient } from '@delon/theme';
|
|
||||||
import { ShipperBaseService } from '@shared';
|
import { ShipperBaseService } from '@shared';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
@ -20,7 +19,6 @@ import { PublishGoodsChooseFamifiarComponent } from '../choose-famifiar/choose-f
|
|||||||
import { PublishAddressListComponent } from '../onecar-publish/address-list/address-list.component';
|
import { PublishAddressListComponent } from '../onecar-publish/address-list/address-list.component';
|
||||||
import { PublishSuccessComponent } from '../onecar-publish/publish-success/publish-success.component';
|
import { PublishSuccessComponent } from '../onecar-publish/publish-success/publish-success.component';
|
||||||
import { TranAgreementComponent } from '../tran-agreement/tran-agreement.component';
|
import { TranAgreementComponent } from '../tran-agreement/tran-agreement.component';
|
||||||
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
|
||||||
import { SupplyManagementQrcodePageComponent } from '../qrcode-page/qrcode-page.component';
|
import { SupplyManagementQrcodePageComponent } from '../qrcode-page/qrcode-page.component';
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-publish-goods-bulk-publish',
|
selector: 'app-publish-goods-bulk-publish',
|
||||||
@ -28,7 +26,7 @@ import { SupplyManagementQrcodePageComponent } from '../qrcode-page/qrcode-page.
|
|||||||
styleUrls: ['./bulk-release-publish.component.less']
|
styleUrls: ['./bulk-release-publish.component.less']
|
||||||
})
|
})
|
||||||
export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
||||||
@ViewChild('ngForm')
|
validateForm1: FormGroup;
|
||||||
ngForm!: NgForm;
|
ngForm!: NgForm;
|
||||||
sf1data: any; // 货源单设置回显
|
sf1data: any; // 货源单设置回显
|
||||||
sf3data: any; // 货源单设置回显
|
sf3data: any; // 货源单设置回显
|
||||||
@ -50,6 +48,7 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
maxFreight: 9999999
|
maxFreight: 9999999
|
||||||
}
|
}
|
||||||
shipperName = '';
|
shipperName = '';
|
||||||
|
patternStr = `^((13[0-9])|(14[0-1,4-9])|(15([0-3,5-9]))|(17[0-8])|(18[0-9])|(19[0-3,5-9])|(16[2,5,6,7]))\\d{8}$`;
|
||||||
// // 单位
|
// // 单位
|
||||||
startInfo: any[] = [];
|
startInfo: any[] = [];
|
||||||
endInfo: any[] = [];
|
endInfo: any[] = [];
|
||||||
@ -57,16 +56,21 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
totalTime = 0.0; //路程总时间
|
totalTime = 0.0; //路程总时间
|
||||||
freightTypeOptions: any;
|
freightTypeOptions: any;
|
||||||
constructor(
|
constructor(
|
||||||
private http: _HttpClient,
|
fb: FormBuilder,
|
||||||
private modalService: NzModalService,
|
private modalService: NzModalService,
|
||||||
private settingSrv: SettingsService,
|
|
||||||
private service: SupplyManagementService,
|
private service: SupplyManagementService,
|
||||||
private router: Router,
|
private router: Router,
|
||||||
private route: ActivatedRoute,
|
|
||||||
private amapService: AmapService,
|
private amapService: AmapService,
|
||||||
public shipperSrv: ShipperBaseService
|
public shipperSrv: ShipperBaseService
|
||||||
) {
|
) {
|
||||||
|
this.validateForm1 = fb.group({
|
||||||
|
loadAddress0: [null, [Validators.required]],
|
||||||
|
loadName0: [null, [Validators.required]],
|
||||||
|
loadPhone0: [null, [Validators.required, Validators.pattern(this.patternStr)]],
|
||||||
|
unloadAddress0: [null, [Validators.required]],
|
||||||
|
unloadName0: [null, [Validators.required]],
|
||||||
|
unloadPhone0: [null, [Validators.required, Validators.pattern(this.patternStr)]]
|
||||||
|
});
|
||||||
}
|
}
|
||||||
@ViewChild('sf1', { static: false }) sf1!: SFComponent;
|
@ViewChild('sf1', { static: false }) sf1!: SFComponent;
|
||||||
schema1: SFSchema = {};
|
schema1: SFSchema = {};
|
||||||
@ -231,13 +235,34 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
initSF3() {
|
initSF3() {
|
||||||
this.schema3 = {
|
this.schema3 = {
|
||||||
properties: {
|
properties: {
|
||||||
goodsTypeId: {
|
goodsTips: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
|
ui: {
|
||||||
|
widget: 'custom',
|
||||||
|
class: 'goods_Tips_item',
|
||||||
|
// visibleIf: {
|
||||||
|
// goodsTypeName: (value: any) => value && value === '其它'
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
goodsName: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '货物名称',
|
title: '货物名称',
|
||||||
|
ui: {
|
||||||
|
// hidden: true,
|
||||||
|
// visibleIf: {
|
||||||
|
// goodsTypeName: (value: any) => value && value !== '其它'
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
},
|
||||||
|
goodsTypeId: {
|
||||||
|
type: 'string',
|
||||||
|
title: '',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
errors: { required: '请选择货物类型' },
|
errors: { required: '请选择货物名称' },
|
||||||
asyncData: () =>
|
asyncData: () =>
|
||||||
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
||||||
map((data: any) => {
|
map((data: any) => {
|
||||||
@ -259,44 +284,8 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
hidden: true
|
hidden: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
goodsNameId: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
widget: 'select',
|
|
||||||
placeholder: '请选择',
|
|
||||||
errors: { required: '请填写货物名称' },
|
|
||||||
change: (value: any, data: any) => {
|
|
||||||
this.sf3.setValue('/goodsName', data.label);
|
|
||||||
},
|
|
||||||
visibleIf: {
|
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
goodsName: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
ui: {
|
|
||||||
hidden: true,
|
|
||||||
visibleIf: {
|
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
goodsName1: {
|
|
||||||
type: 'string',
|
|
||||||
title: '',
|
|
||||||
maxLength: 20,
|
|
||||||
ui: {
|
|
||||||
errors: { required: '请填写货物名称' },
|
|
||||||
visibleIf: {
|
|
||||||
goodsTypeName: (value: any) => value && value === '其它'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
required: ['goodsTypeId', 'goodsName', 'goodsNameId','goodsName1']
|
required: ['goodsTypeId', 'goodsName', ]
|
||||||
};
|
};
|
||||||
this.ui3 = {
|
this.ui3 = {
|
||||||
'*': {
|
'*': {
|
||||||
@ -620,10 +609,6 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit {
|
|||||||
|
|
||||||
// 货物信息
|
// 货物信息
|
||||||
const sf3Values = { ...this.sf3.value };
|
const sf3Values = { ...this.sf3.value };
|
||||||
if (sf3Values.goodsTypeName === '其它') {
|
|
||||||
sf3Values.goodsName = sf3Values.goodsName1;
|
|
||||||
delete sf3Values.goodsName1;
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carModel.includes('999')) {
|
if (this.sf4.value.carModel.includes('999')) {
|
||||||
this.sf4.value.carModel = ['999']
|
this.sf4.value.carModel = ['999']
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,9 +1,5 @@
|
|||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFSchema, SFSchemaEnumType, SFUISchema } from '@delon/form';
|
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-choose-famifiar-add',
|
selector: 'app-choose-famifiar-add',
|
||||||
@ -16,7 +12,7 @@ export class PublishchooseFamifiarAddComponent implements OnInit {
|
|||||||
|
|
||||||
i: any;
|
i: any;
|
||||||
|
|
||||||
constructor(public http: _HttpClient, private cdr: ChangeDetectorRef, private route: ActivatedRoute) {}
|
constructor() {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
|
|||||||
@ -1,10 +1,8 @@
|
|||||||
import { Component, Input, OnInit, ViewChild } from '@angular/core';
|
import { Component, Input, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
|
||||||
import { STColumn, STComponent, STData } from '@delon/abc/st';
|
import { STColumn, STComponent, STData } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { ModalHelper } from '@delon/theme';
|
import { ModalHelper } from '@delon/theme';
|
||||||
import { EAEnvironmentService } from '@shared';
|
import { EAEnvironmentService } from '@shared';
|
||||||
import { NzDrawerService } from 'ng-zorro-antd/drawer';
|
|
||||||
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { SupplyManagementAddDriversComponent } from 'src/app/routes/supply-management/components/add-drivers/add-drivers.component';
|
import { SupplyManagementAddDriversComponent } from 'src/app/routes/supply-management/components/add-drivers/add-drivers.component';
|
||||||
import { SupplyManagementService } from '../../services/supply-management.service';
|
import { SupplyManagementService } from '../../services/supply-management.service';
|
||||||
@ -39,9 +37,6 @@ export class PublishGoodsChooseFamifiarComponent implements OnInit {
|
|||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private modal: NzModalRef,
|
private modal: NzModalRef,
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
private drawerService: NzDrawerService,
|
|
||||||
public service: SupplyManagementService,
|
public service: SupplyManagementService,
|
||||||
private modalService: NzModalService,
|
private modalService: NzModalService,
|
||||||
private modalHelper: ModalHelper,
|
private modalHelper: ModalHelper,
|
||||||
|
|||||||
@ -8,12 +8,9 @@
|
|||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\choose-famifiar\\set-captain\\set-captain.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\choose-famifiar\\set-captain\\set-captain.component.ts
|
||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
import { AfterViewInit, ChangeDetectorRef, Component, OnChanges, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFSchema, SFSchemaEnumType, SFUISchema } from '@delon/form';
|
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
import { map } from 'rxjs/operators';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-choose-famifiar-set-captain',
|
selector: 'app-choose-famifiar-set-captain',
|
||||||
@ -26,7 +23,7 @@ export class PublishchooseFamifiarSetCaptainComponent implements OnInit {
|
|||||||
|
|
||||||
i: any;
|
i: any;
|
||||||
|
|
||||||
constructor(public http: _HttpClient, private cdr: ChangeDetectorRef, private route: ActivatedRoute, private modal: NzModalRef,) {}
|
constructor( private modal: NzModalRef,) {}
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this.initSF();
|
this.initSF();
|
||||||
|
|||||||
@ -10,11 +10,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
|
||||||
import { STChange, STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
|
import { STChange, STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
|
||||||
import { processSingleSort } from '@shared';
|
import { processSingleSort } from '@shared';
|
||||||
import { NzDrawerService } from 'ng-zorro-antd/drawer';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { SupplyManagementService } from '../../../services/supply-management.service';
|
import { SupplyManagementService } from '../../../services/supply-management.service';
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-publish-address-list',
|
selector: 'app-publish-address-list',
|
||||||
@ -30,11 +27,7 @@ export class PublishAddressListComponent implements OnInit {
|
|||||||
spuStatus = '1'; // '1'客户地址,'2'收回单地址
|
spuStatus = '1'; // '1'客户地址,'2'收回单地址
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
public router: Router,
|
|
||||||
public ar: ActivatedRoute,
|
|
||||||
private drawerService: NzDrawerService,
|
|
||||||
public service: SupplyManagementService,
|
public service: SupplyManagementService,
|
||||||
private modalService: NzModalService
|
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -3,9 +3,8 @@ import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms'
|
|||||||
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
||||||
import format from 'date-fns/format';
|
import format from 'date-fns/format';
|
||||||
import { Subject } from 'rxjs';
|
import { Subject } from 'rxjs';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import {
|
import {
|
||||||
SFCheckboxWidgetSchema,
|
|
||||||
SFComponent,
|
SFComponent,
|
||||||
SFNumberWidgetSchema,
|
SFNumberWidgetSchema,
|
||||||
SFSchema,
|
SFSchema,
|
||||||
@ -14,7 +13,6 @@ import {
|
|||||||
SFTextareaWidgetSchema,
|
SFTextareaWidgetSchema,
|
||||||
SFUISchema
|
SFUISchema
|
||||||
} from '@delon/form';
|
} from '@delon/form';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { AmapPoiPickerComponent, AmapService, EACacheService, ShipperBaseService } from '@shared';
|
import { AmapPoiPickerComponent, AmapService, EACacheService, ShipperBaseService } from '@shared';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
@ -43,6 +41,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
intervalDays: 999,
|
intervalDays: 999,
|
||||||
maxTimes: 5
|
maxTimes: 5
|
||||||
};
|
};
|
||||||
|
patternStr = `^((13[0-9])|(14[0-1,4-9])|(15([0-3,5-9]))|(17[0-8])|(18[0-9])|(19[0-3,5-9])|(16[2,5,6,7]))\\d{8}$`;
|
||||||
sf1data: any; // 货源单设置回显
|
sf1data: any; // 货源单设置回显
|
||||||
sf3data: any; // 货源单设置回显
|
sf3data: any; // 货源单设置回显
|
||||||
sf4data: any; // 货源单设置回显
|
sf4data: any; // 货源单设置回显
|
||||||
@ -66,9 +65,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
envCache: any;
|
envCache: any;
|
||||||
enterpriseProjectIds: any;
|
enterpriseProjectIds: any;
|
||||||
constructor(
|
constructor(
|
||||||
private http: _HttpClient,
|
|
||||||
fb: FormBuilder,
|
fb: FormBuilder,
|
||||||
private router: Router,
|
|
||||||
private route: ActivatedRoute,
|
private route: ActivatedRoute,
|
||||||
private modalService: NzModalService,
|
private modalService: NzModalService,
|
||||||
public service: SupplyManagementService,
|
public service: SupplyManagementService,
|
||||||
@ -78,7 +75,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
) {
|
) {
|
||||||
this.validateForm1 = fb.group({
|
this.validateForm1 = fb.group({
|
||||||
loadingTime: [null, [Validators.required]],
|
loadingTime: [null, [Validators.required]],
|
||||||
unloadingTime: [null, [Validators.required]]
|
unloadingTime: [null, [Validators.required]],
|
||||||
});
|
});
|
||||||
this.envCache = this.eaCacheSrv.get(cacheConf.env);
|
this.envCache = this.eaCacheSrv.get(cacheConf.env);
|
||||||
}
|
}
|
||||||
@ -267,13 +264,23 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
goodsName: {
|
||||||
|
type: 'string',
|
||||||
|
title: '货物名称',
|
||||||
|
ui: {
|
||||||
|
// hidden: true,
|
||||||
|
// visibleIf: {
|
||||||
|
// goodsTypeName: (value: any) => value && value !== '其它'
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
},
|
||||||
goodsTypeId: {
|
goodsTypeId: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '货物类型',
|
title: '',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
errors: { required: '请选择货物类型' },
|
errors: { required: '请选择货物名称' },
|
||||||
asyncData: () =>
|
asyncData: () =>
|
||||||
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
||||||
map((data: any) => {
|
map((data: any) => {
|
||||||
@ -295,47 +302,38 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
hidden: true
|
hidden: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
goodsNameId: {
|
|
||||||
type: 'string',
|
// goodsName1: {
|
||||||
title: '',
|
// type: 'string',
|
||||||
ui: {
|
// title: '',
|
||||||
widget: 'select',
|
// maxLength: 20,
|
||||||
placeholder: '请选择',
|
// ui: {
|
||||||
errors: { required: '请填写货物类型' },
|
// errors: { required: '请填写货物名称' },
|
||||||
change: (_value: any, data: any) => {
|
// visibleIf: {
|
||||||
this.sf3.setValue('/goodsName', data.label);
|
// goodsTypeName: (value: any) => value && value === '其它'
|
||||||
},
|
// },
|
||||||
visibleIf: {
|
// blur: (value: any) => {
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
// this.checkGoodsName();
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
goodsName: {
|
// goodsNameId: {
|
||||||
type: 'string',
|
// type: 'string',
|
||||||
title: '',
|
// title: '',
|
||||||
ui: {
|
// ui: {
|
||||||
hidden: true,
|
// widget: 'select',
|
||||||
visibleIf: {
|
// placeholder: '请选择',
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
// errors: { required: '请填写货物名称' },
|
||||||
}
|
// change: (value: any, data: any) => {
|
||||||
}
|
// // this.sf3.setValue('/goodsName', data.label);
|
||||||
},
|
// },
|
||||||
goodsName1: {
|
// visibleIf: {
|
||||||
type: 'string',
|
// goodsTypeName: (value: any) => value && value !== '其它'
|
||||||
title: '',
|
// }
|
||||||
maxLength: 20,
|
// }
|
||||||
ui: {
|
// },
|
||||||
errors: { required: '请填写货物类型' },
|
|
||||||
visibleIf: {
|
|
||||||
goodsTypeName: (value: any) => value && value === '其它'
|
|
||||||
},
|
|
||||||
blur: (value: any) => {
|
|
||||||
this.checkGoodsName();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
required: ['goodsTypeId', 'goodsName', 'goodsNameId', 'goodsName1']
|
required: ['goodsTypeId', 'goodsName', ]
|
||||||
};
|
};
|
||||||
this.ui3 = {
|
this.ui3 = {
|
||||||
'*': {
|
'*': {
|
||||||
@ -806,7 +804,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
this.validateForm1.addControl(`loadAddress${controlId}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`loadAddress${controlId}`, new FormControl(null, Validators.required));
|
||||||
this.validateForm1.addControl(`loadName${controlId}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`loadName${controlId}`, new FormControl(null, Validators.required));
|
||||||
this.validateForm1.addControl(`loadPhone${controlId}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
this.validateForm1.addControl(`loadPhone${controlId}`, new FormControl(null, [Validators.required, Validators.pattern(this.patternStr)]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -862,7 +860,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
this.validateForm1.addControl(`unloadName${controlId}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`unloadName${controlId}`, new FormControl(null, Validators.required));
|
||||||
this.validateForm1.addControl(
|
this.validateForm1.addControl(
|
||||||
`unloadPhone${controlId}`,
|
`unloadPhone${controlId}`,
|
||||||
new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')])
|
new FormControl(null, [Validators.required, Validators.pattern(this.patternStr)])
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1016,10 +1014,8 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
|
|
||||||
// 货物信息
|
// 货物信息
|
||||||
const sf3Values = { ...this.sf3.value };
|
const sf3Values = { ...this.sf3.value };
|
||||||
if (sf3Values.goodsTypeName === '其它') {
|
console.log(sf3Values);
|
||||||
sf3Values.goodsName = sf3Values.goodsName1;
|
|
||||||
delete sf3Values.goodsName1;
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carModel.includes('999')) {
|
if (this.sf4.value.carModel.includes('999')) {
|
||||||
this.sf4.value.carModel = ['999'];
|
this.sf4.value.carModel = ['999'];
|
||||||
}
|
}
|
||||||
@ -1370,6 +1366,15 @@ export class SupplyManagementOnecarPublishComponent implements OnInit {
|
|||||||
this.sf7.setValue('/toPay', this.sf7data.toPay);
|
this.sf7.setValue('/toPay', this.sf7data.toPay);
|
||||||
this.sf7.setValue('/receiptPay', this.sf7data.receiptPay);
|
this.sf7.setValue('/receiptPay', this.sf7data.receiptPay);
|
||||||
this.payChange();
|
this.payChange();
|
||||||
|
// console.log('88888');
|
||||||
|
|
||||||
|
// this.validateForm1.reset();
|
||||||
|
// for (const key in this.validateForm1.controls) {
|
||||||
|
// if (this.validateForm1.controls.hasOwnProperty(key)) {
|
||||||
|
// this.validateForm1.controls[key].markAsPristine();
|
||||||
|
// this.validateForm1.controls[key].updateValueAndValidity();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
// 选择地址
|
// 选择地址
|
||||||
|
|||||||
@ -1,10 +1,8 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';
|
import { FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
|
||||||
import { cacheConf } from '@conf/cache.conf';
|
import { cacheConf } from '@conf/cache.conf';
|
||||||
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
||||||
import {
|
import {
|
||||||
SFCheckboxWidgetSchema,
|
|
||||||
SFComponent,
|
SFComponent,
|
||||||
SFNumberWidgetSchema,
|
SFNumberWidgetSchema,
|
||||||
SFSchema,
|
SFSchema,
|
||||||
@ -13,7 +11,6 @@ import {
|
|||||||
SFTextareaWidgetSchema,
|
SFTextareaWidgetSchema,
|
||||||
SFUISchema
|
SFUISchema
|
||||||
} from '@delon/form';
|
} from '@delon/form';
|
||||||
import { SettingsService, _HttpClient } from '@delon/theme';
|
|
||||||
import { EACacheService, ShipperBaseService } from '@shared';
|
import { EACacheService, ShipperBaseService } from '@shared';
|
||||||
import format from 'date-fns/format';
|
import format from 'date-fns/format';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
@ -52,14 +49,11 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
totalTime = 0.0; //路程总时间
|
totalTime = 0.0; //路程总时间
|
||||||
currentRate = 0; //实时计算的费率
|
currentRate = 0; //实时计算的费率
|
||||||
shipperName = '';
|
shipperName = '';
|
||||||
|
patternStr = `^((13[0-9])|(14[0-1,4-9])|(15([0-3,5-9]))|(17[0-8])|(18[0-9])|(19[0-3,5-9])|(16[2,5,6,7]))\\d{8}$`;
|
||||||
constructor(
|
constructor(
|
||||||
private http: _HttpClient,
|
|
||||||
fb: FormBuilder,
|
fb: FormBuilder,
|
||||||
private modalService: NzModalService,
|
private modalService: NzModalService,
|
||||||
private settingSrv: SettingsService,
|
|
||||||
public service: SupplyManagementService,
|
public service: SupplyManagementService,
|
||||||
private router: Router,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private eaCacheSrv: EACacheService,
|
private eaCacheSrv: EACacheService,
|
||||||
private amapService: AmapService,
|
private amapService: AmapService,
|
||||||
public shipperSrv: ShipperBaseService
|
public shipperSrv: ShipperBaseService
|
||||||
@ -67,10 +61,10 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
this.validateForm1 = fb.group({
|
this.validateForm1 = fb.group({
|
||||||
loadAddress0: [null, [Validators.required]],
|
loadAddress0: [null, [Validators.required]],
|
||||||
loadName0: [null, [Validators.required]],
|
loadName0: [null, [Validators.required]],
|
||||||
loadPhone0: [null, [Validators.required, Validators.pattern('^[0-9]*$')]],
|
loadPhone0: [null, [Validators.required, Validators.pattern(this.patternStr)]],
|
||||||
unloadAddress0: [null, [Validators.required]],
|
unloadAddress0: [null, [Validators.required]],
|
||||||
unloadName0: [null, [Validators.required]],
|
unloadName0: [null, [Validators.required]],
|
||||||
unloadPhone0: [null, [Validators.required, Validators.pattern('^[0-9]*$')]],
|
unloadPhone0: [null, [Validators.required, Validators.pattern(this.patternStr)]],
|
||||||
loadingTime: [null, [Validators.required]],
|
loadingTime: [null, [Validators.required]],
|
||||||
unloadingTime: [null, [Validators.required]]
|
unloadingTime: [null, [Validators.required]]
|
||||||
});
|
});
|
||||||
@ -257,13 +251,23 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
goodsName: {
|
||||||
|
type: 'string',
|
||||||
|
title: '货物名称',
|
||||||
|
ui: {
|
||||||
|
// hidden: true,
|
||||||
|
// visibleIf: {
|
||||||
|
// goodsTypeName: (value: any) => value && value !== '其它'
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
},
|
||||||
goodsTypeId: {
|
goodsTypeId: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '货物类型',
|
title: '',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
errors: { required: '请选择货物类型' },
|
errors: { required: '请选择货物名称' },
|
||||||
asyncData: () =>
|
asyncData: () =>
|
||||||
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
this.shipperSrv.loadConfigByKey('goods.name.config.type').pipe(
|
||||||
map((data: any) => {
|
map((data: any) => {
|
||||||
@ -285,47 +289,38 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
hidden: true
|
hidden: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
goodsNameId: {
|
|
||||||
type: 'string',
|
// goodsName1: {
|
||||||
title: '',
|
// type: 'string',
|
||||||
ui: {
|
// title: '',
|
||||||
widget: 'select',
|
// maxLength: 20,
|
||||||
placeholder: '请选择',
|
// ui: {
|
||||||
errors: { required: '请填写货物类型' },
|
// errors: { required: '请填写货物名称' },
|
||||||
change: (value: any, data: any) => {
|
// visibleIf: {
|
||||||
this.sf3.setValue('/goodsName', data.label);
|
// goodsTypeName: (value: any) => value && value === '其它'
|
||||||
},
|
// },
|
||||||
visibleIf: {
|
// blur: (value: any) => {
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
// this.checkGoodsName();
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
goodsName: {
|
// goodsNameId: {
|
||||||
type: 'string',
|
// type: 'string',
|
||||||
title: '',
|
// title: '',
|
||||||
ui: {
|
// ui: {
|
||||||
hidden: true,
|
// widget: 'select',
|
||||||
visibleIf: {
|
// placeholder: '请选择',
|
||||||
goodsTypeName: (value: any) => value && value !== '其它'
|
// errors: { required: '请填写货物名称' },
|
||||||
}
|
// change: (value: any, data: any) => {
|
||||||
}
|
// // this.sf3.setValue('/goodsName', data.label);
|
||||||
},
|
// },
|
||||||
goodsName1: {
|
// visibleIf: {
|
||||||
type: 'string',
|
// goodsTypeName: (value: any) => value && value !== '其它'
|
||||||
title: '',
|
// }
|
||||||
maxLength: 20,
|
// }
|
||||||
ui: {
|
// },
|
||||||
errors: { required: '请填写货物类型' },
|
|
||||||
visibleIf: {
|
|
||||||
goodsTypeName: (value: any) => value && value === '其它'
|
|
||||||
},
|
|
||||||
blur: (value: any) => {
|
|
||||||
this.checkGoodsName();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
required: ['goodsTypeId', 'goodsName', 'goodsNameId', 'goodsName1']
|
required: ['goodsTypeId', 'goodsName', ]
|
||||||
};
|
};
|
||||||
this.ui3 = {
|
this.ui3 = {
|
||||||
'*': {
|
'*': {
|
||||||
@ -609,7 +604,6 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
receiptUserPhone: {
|
receiptUserPhone: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '联系电话',
|
title: '联系电话',
|
||||||
format: 'mobile',
|
|
||||||
maxLength: 11,
|
maxLength: 11,
|
||||||
ui: {
|
ui: {
|
||||||
errors: {
|
errors: {
|
||||||
@ -836,7 +830,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
});
|
});
|
||||||
this.validateForm1.addControl(`loadAddress${controlId}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`loadAddress${controlId}`, new FormControl(null, Validators.required));
|
||||||
this.validateForm1.addControl(`loadName${controlId}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`loadName${controlId}`, new FormControl(null, Validators.required));
|
||||||
this.validateForm1.addControl(`loadPhone${controlId}`, new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')]));
|
this.validateForm1.addControl(`loadPhone${controlId}`, new FormControl(null, [Validators.required, Validators.pattern(this.patternStr)]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 添加 删除发货卸货地址
|
// 添加 删除发货卸货地址
|
||||||
@ -865,7 +859,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
this.validateForm1.addControl(`unloadName${controlId}`, new FormControl(null, Validators.required));
|
this.validateForm1.addControl(`unloadName${controlId}`, new FormControl(null, Validators.required));
|
||||||
this.validateForm1.addControl(
|
this.validateForm1.addControl(
|
||||||
`unloadPhone${controlId}`,
|
`unloadPhone${controlId}`,
|
||||||
new FormControl(null, [Validators.required, Validators.pattern('^[0-9]*$')])
|
new FormControl(null, [Validators.required, Validators.pattern(this.patternStr)])
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -985,10 +979,6 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
|
|
||||||
// 货物信息
|
// 货物信息
|
||||||
const sf3Values = { ...this.sf3.value };
|
const sf3Values = { ...this.sf3.value };
|
||||||
if (sf3Values.goodsTypeName === '其它') {
|
|
||||||
sf3Values.goodsName = sf3Values.goodsName1;
|
|
||||||
delete sf3Values.goodsName1;
|
|
||||||
}
|
|
||||||
if (this.sf4.value.carModel.includes('999')) {
|
if (this.sf4.value.carModel.includes('999')) {
|
||||||
this.sf4.value.carModel = ['999'];
|
this.sf4.value.carModel = ['999'];
|
||||||
}
|
}
|
||||||
@ -1027,19 +1017,18 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
insurancePackagedGoods: this.sf4.value.insurancePackagedGoods,
|
insurancePackagedGoods: this.sf4.value.insurancePackagedGoods,
|
||||||
goodsValue: this.sf4.value.goodsValue
|
goodsValue: this.sf4.value.goodsValue
|
||||||
};
|
};
|
||||||
console.log(params);
|
const modalRef = this.modalService.create({
|
||||||
// const modalRef = this.modalService.create({
|
nzTitle: '运输协议',
|
||||||
// nzTitle: '运输协议',
|
nzContent: TranAgreementComponent,
|
||||||
// nzContent: TranAgreementComponent,
|
nzWidth: 900,
|
||||||
// nzWidth: 900,
|
nzFooter: null,
|
||||||
// nzFooter: null,
|
nzComponentParams: { object: params, shipperName: this.shipperName, type: 'onecar' }
|
||||||
// nzComponentParams: { object: params, shipperName: this.shipperName, type: 'onecar' }
|
});
|
||||||
// });
|
modalRef.afterClose.subscribe(result => {
|
||||||
// modalRef.afterClose.subscribe(result => {
|
if (result) {
|
||||||
// if (result) {
|
this.submit(submitType, params);
|
||||||
// this.submit(submitType, params);
|
}
|
||||||
// }
|
});
|
||||||
// });
|
|
||||||
}
|
}
|
||||||
// 提交
|
// 提交
|
||||||
submit(submitType?: string, params?: any): void {
|
submit(submitType?: string, params?: any): void {
|
||||||
@ -1294,7 +1283,7 @@ export class SupplyManagementReleasePublishComponent implements OnInit {
|
|||||||
this.service.request(this.service.$api_checkGoodsName, name).subscribe(res => {
|
this.service.request(this.service.$api_checkGoodsName, name).subscribe(res => {
|
||||||
if (res === false) {
|
if (res === false) {
|
||||||
const modalRef = this.modalService.error({
|
const modalRef = this.modalService.error({
|
||||||
nzTitle: '货物类型含有违禁词,请重新输入!',
|
nzTitle: '货物名称含有违禁词,请重新输入!',
|
||||||
});
|
});
|
||||||
modalRef.afterClose.subscribe(result => {
|
modalRef.afterClose.subscribe(result => {
|
||||||
// this.sf3.setValue('/goodsName1', null);
|
// this.sf3.setValue('/goodsName1', null);
|
||||||
|
|||||||
@ -2,12 +2,10 @@ import { ActivatedRoute, Router } from '@angular/router';
|
|||||||
import { Component, OnInit, ViewChild, OnChanges } from '@angular/core';
|
import { Component, OnInit, ViewChild, OnChanges } from '@angular/core';
|
||||||
import { STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
|
import { STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { ModalHelper, _HttpClient } from '@delon/theme';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { map } from 'rxjs/operators';
|
import { map } from 'rxjs/operators';
|
||||||
import { SupplyManagementService } from '../../services/supply-management.service';
|
import { SupplyManagementService } from '../../services/supply-management.service';
|
||||||
import { SupplyManagementVehicleAssignedCarComponent } from '../assigned-car/assigned-car.component';
|
import { SupplyManagementVehicleAssignedCarComponent } from '../assigned-car/assigned-car.component';
|
||||||
import { SupplyManagementUpdateExternalSnComponent } from '../update-external-sn/update-external-sn.component';
|
|
||||||
import { of } from 'rxjs';
|
import { of } from 'rxjs';
|
||||||
import { SearchDrawerService, ShipperBaseService } from '@shared';
|
import { SearchDrawerService, ShipperBaseService } from '@shared';
|
||||||
import { SupplyManagementImportSupplyComponent } from '../../model/import-supply/import-supply.component';
|
import { SupplyManagementImportSupplyComponent } from '../../model/import-supply/import-supply.component';
|
||||||
@ -44,7 +42,6 @@ export class SupplyManagementVehicleComponent extends BasicTableComponent implem
|
|||||||
public service: SupplyManagementService,
|
public service: SupplyManagementService,
|
||||||
private modal: NzModalService,
|
private modal: NzModalService,
|
||||||
private router: Router,
|
private router: Router,
|
||||||
private ar: ActivatedRoute,
|
|
||||||
public shipperSrv: ShipperBaseService,
|
public shipperSrv: ShipperBaseService,
|
||||||
public searchDrawerService: SearchDrawerService
|
public searchDrawerService: SearchDrawerService
|
||||||
) {
|
) {
|
||||||
|
|||||||
@ -9,10 +9,8 @@
|
|||||||
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
*/
|
*/
|
||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
|
||||||
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema } from '@delon/form';
|
import { SFComponent, SFSchema } from '@delon/form';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { SystemService } from '../../services/system.service';
|
import { SystemService } from '../../services/system.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -20,7 +18,7 @@ import { SystemService } from '../../services/system.service';
|
|||||||
templateUrl: './note-management.component.html',
|
templateUrl: './note-management.component.html',
|
||||||
styleUrls: ['../../../commom/less/box.less']
|
styleUrls: ['../../../commom/less/box.less']
|
||||||
})
|
})
|
||||||
export class NoTeManagementComponent implements OnInit {
|
export class NoTeManagementComponent {
|
||||||
@ViewChild('st', { static: true })
|
@ViewChild('st', { static: true })
|
||||||
st!: STComponent;
|
st!: STComponent;
|
||||||
@ViewChild('sf', { static: false })
|
@ViewChild('sf', { static: false })
|
||||||
@ -52,11 +50,9 @@ export class NoTeManagementComponent implements OnInit {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
constructor(public service: SystemService, private nzModalService: NzModalService, private route: ActivatedRoute) {
|
constructor(public service: SystemService) {
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit(): void {}
|
|
||||||
|
|
||||||
beforeReq = (requestOptions: STRequestOptions) => {
|
beforeReq = (requestOptions: STRequestOptions) => {
|
||||||
if (this.sf) {
|
if (this.sf) {
|
||||||
Object.assign(requestOptions.body, { ...this.sf?.value });
|
Object.assign(requestOptions.body, { ...this.sf?.value });
|
||||||
|
|||||||
@ -19,10 +19,10 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<se-container se-container="1">
|
<se-container se-container="1">
|
||||||
<se label="角色权限" required [labelWidth]="120">
|
<se label="角色权限" required [labelWidth]="120">
|
||||||
<app-cuc-menu #menu (changeData)="getData($event)" [type]="params.id === 0 ? 'add' : 'edit'" [roleId]="params.id" [appId]="params.appId"
|
<app-menu-tree #menu (changeData)="getData($event)" [type]="params.id === 0 ? 'add' : 'edit'" [roleId]="params.id"
|
||||||
[isAuthorityIdDTOList]="roleInfoData.authority || []"
|
[appId]="params.appId" [isAuthorityIdDTOList]="roleInfoData.authority || []"
|
||||||
[authorityAssistId]="roleInfoData.authorityAssistId || []" (changeIF)="changeIF($event)">
|
[authorityAssistId]="roleInfoData.authorityAssistId || []" (changeIF)="changeIF($event)">
|
||||||
</app-cuc-menu>
|
</app-menu-tree>
|
||||||
</se>
|
</se>
|
||||||
</se-container>
|
</se-container>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -202,7 +202,7 @@ export class TaxManagementIndividualDeclareComponent extends BasicTableComponent
|
|||||||
{ title: '证件类型', index: 'sfzjlx', className: 'text-center', width: '200px' },
|
{ title: '证件类型', index: 'sfzjlx', className: 'text-center', width: '200px' },
|
||||||
{ title: '证件号码', index: 'sfzjhm', className: 'text-center', width: '200px' },
|
{ title: '证件号码', index: 'sfzjhm', className: 'text-center', width: '200px' },
|
||||||
{ title: '联系电话', index: 'lxdh', className: 'text-center', width: '200px' },
|
{ title: '联系电话', index: 'lxdh', className: 'text-center', width: '200px' },
|
||||||
{ title: '国家(地区)', index: ' gjdq', className: 'text-center', width: '200px' },
|
{ title: '国家(地区)', index: 'gjdq', className: 'text-center', width: '200px' },
|
||||||
{ title: '所属行业', index: 'hy', className: 'text-center', width: '200px' },
|
{ title: '所属行业', index: 'hy', className: 'text-center', width: '200px' },
|
||||||
{ title: '征收项目', index: 'zsxm', className: 'text-center', width: '200px' },
|
{ title: '征收项目', index: 'zsxm', className: 'text-center', width: '200px' },
|
||||||
{ title: '征收品目', index: 'zsmp', className: 'text-center', width: '200px' },
|
{ title: '征收品目', index: 'zsmp', className: 'text-center', width: '200px' },
|
||||||
|
|||||||
@ -31,7 +31,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<st #st [data]="service.$api_invoicedBillInfo_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
<st #st [data]="service.$api_invoicedBillInfo_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
||||||
[loading]="false" [scroll]="{ x:'1200px' }">
|
[loading]="false" [scroll]="{ x:'1200px', y: scrollY }">
|
||||||
<ng-template st-row="serviceType" let-item let-index="index">
|
<ng-template st-row="serviceType" let-item let-index="index">
|
||||||
<span>{{item.billTypeLabel + item.serviceTypeLabel}}</span>
|
<span>{{item.billTypeLabel + item.serviceTypeLabel}}</span>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -1,9 +1,8 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFDateWidgetSchema, SFSelectWidgetSchema } from '@delon/form';
|
import { SFComponent, SFSchema, SFDateWidgetSchema, SFSelectWidgetSchema } from '@delon/form';
|
||||||
import { SearchDrawerService } from '@shared';
|
import { SearchDrawerService } from '@shared';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
|
||||||
import { BasicTableComponent } from 'src/app/routes/commom';
|
import { BasicTableComponent } from 'src/app/routes/commom';
|
||||||
import { TicketService } from '../../services/ticket.service';
|
import { TicketService } from '../../services/ticket.service';
|
||||||
|
|
||||||
@ -214,7 +213,7 @@ export class BillingOrderComponent extends BasicTableComponent {
|
|||||||
className: 'text-center',
|
className: 'text-center',
|
||||||
index: 'paymentMethodRate',
|
index: 'paymentMethodRate',
|
||||||
width: 130,
|
width: 130,
|
||||||
format: record => `${record.paymentMethodRate*100}%`
|
format: record => `${(record.paymentMethodRate*100).toFixed(2)}%`
|
||||||
},
|
},
|
||||||
{ title: '货主名称', index: 'shipperAppUserName', width: '180px', className: 'text-center' },
|
{ title: '货主名称', index: 'shipperAppUserName', width: '180px', className: 'text-center' },
|
||||||
{ title: '所属项目', index: 'enterpriseProjectName', width: '180px', className: 'text-center' },
|
{ title: '所属项目', index: 'enterpriseProjectName', width: '180px', className: 'text-center' },
|
||||||
|
|||||||
@ -19,91 +19,99 @@
|
|||||||
</nz-card> -->
|
</nz-card> -->
|
||||||
|
|
||||||
<nz-card class="table-box">
|
<nz-card class="table-box">
|
||||||
<div class="tab_header">
|
<div class="tab_header">
|
||||||
<label class="page_title">
|
<label class="page_title">
|
||||||
<label class="driver">|</label>
|
<label class="driver">|</label>
|
||||||
销票处理</label>
|
销票处理</label
|
||||||
<nz-tabset [nzTabBarExtraContent]="extraTemplate" (nzSelectedIndexChange)="selectChange($event)">
|
>
|
||||||
<nz-tab nzTitle="全部"></nz-tab>
|
<nz-tabset [nzTabBarExtraContent]="extraTemplate" (nzSelectedIndexChange)="selectChange($event)">
|
||||||
<nz-tab nzTitle="待处理"></nz-tab>
|
<nz-tab nzTitle="全部"></nz-tab>
|
||||||
<nz-tab nzTitle="待确认"></nz-tab>
|
<nz-tab nzTitle="待处理"></nz-tab>
|
||||||
<!-- <nz-tab nzTitle="已确认"></nz-tab> -->
|
<nz-tab nzTitle="待确认"></nz-tab>
|
||||||
</nz-tabset>
|
<!-- <nz-tab nzTitle="已确认"></nz-tab> -->
|
||||||
</div>
|
</nz-tabset>
|
||||||
|
</div>
|
||||||
|
|
||||||
<ng-template #extraTemplate>
|
<ng-template #extraTemplate>
|
||||||
<div class="d-flex align-items-center mr-sm">
|
<div class="d-flex align-items-center mr-sm">
|
||||||
<div class="mr-md">
|
<div class="mr-md">
|
||||||
已选择
|
已选择
|
||||||
<strong class="text-red">{{ selectedRows.length }}</strong> 张发票 发票金额总计
|
<strong class="text-red">{{ selectedRows.length }}</strong> 张发票 发票金额总计
|
||||||
<strong class="text-red">{{totalCallNo }}</strong>
|
<strong class="text-red">{{ totalCallNo }}</strong>
|
||||||
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck();totalCallNo=0" class="ml-lg">清空</a>
|
<a *ngIf="totalCallNo > 0" (click)="st.clearCheck(); totalCallNo = 0" class="ml-lg">清空</a>
|
||||||
</div>
|
</div>
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
||||||
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus" (click)="this.batchPush()">推送开票</button> -->
|
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus" (click)="this.batchPush()">推送开票</button> -->
|
||||||
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus"
|
<!-- <button nz-button *ngIf="resourceStatus===1 || !resourceStatus"
|
||||||
(click)="this.batchRemove(selectedRows)">移除</button>
|
(click)="this.batchRemove(selectedRows)">移除</button>
|
||||||
<button nz-button *ngIf="resourceStatus===2 || !resourceStatus"
|
<button nz-button *ngIf="resourceStatus===2 || !resourceStatus"
|
||||||
(click)="this.batchWithdraw(selectedRows)">撤回</button> -->
|
(click)="this.batchWithdraw(selectedRows)">撤回</button> -->
|
||||||
</div>
|
</div>
|
||||||
|
</ng-template>
|
||||||
|
|
||||||
|
<st
|
||||||
|
#st
|
||||||
|
[scroll]="{ x: '2000px', y: scrollY }"
|
||||||
|
[data]="service.$api_ficoVatinvHList"
|
||||||
|
[columns]="columns"
|
||||||
|
[page]="{}"
|
||||||
|
[req]="{ process: beforeReq }"
|
||||||
|
[res]="{ process: afterRes }"
|
||||||
|
[loading]="false"
|
||||||
|
(change)="stChange($event)"
|
||||||
|
>
|
||||||
|
<ng-template st-row="vatinvcode" let-item let-index="index" let-column="column">
|
||||||
|
{{ item.vatinvcode }} <br />
|
||||||
|
<label class="text-primary">{{ item.stsLabel }}</label>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
</st>
|
||||||
|
|
||||||
<st #st [scroll]="{ x: '2000px',y:scrollY }" [data]="service.$api_ficoVatinvHList" [columns]="columns" [page]="{}"
|
|
||||||
[req]="{process: beforeReq }" [res]="{process:afterRes }" [loading]="false" (change)="stChange($event)">
|
|
||||||
<ng-template st-row="vatinvcode" let-item let-index="index" let-column="column">
|
|
||||||
{{ item.vatinvcode }} <br>
|
|
||||||
<label class="text-primary">{{item.stsLabel}}</label>
|
|
||||||
</ng-template>
|
|
||||||
</st>
|
|
||||||
</nz-card>
|
</nz-card>
|
||||||
|
|
||||||
<ng-template #requestedModal>
|
<ng-template #requestedModal>
|
||||||
<div nz-row nzGutter="8">
|
<div nz-row nzGutter="8">
|
||||||
<div nz-col nzSpan="24" se-container [labelWidth]="100" [col]="1">
|
<div nz-col nzSpan="24" se-container [labelWidth]="100" [col]="1">
|
||||||
<se label="购买方" class="mb-sm">
|
<se label="购买方" class="mb-sm">
|
||||||
{{openInfo?.artoname}}
|
{{ openInfo?.artoname }}
|
||||||
</se>
|
</se>
|
||||||
<se label="纳税号" class="mb-sm">
|
<se label="纳税号" class="mb-sm">
|
||||||
{{openInfo?.artotaxno}}
|
{{ openInfo?.artotaxno }}
|
||||||
</se>
|
</se>
|
||||||
<se label="注册地址" class="mb-sm">
|
<se label="注册地址" class="mb-sm">
|
||||||
{{openInfo?.artoadd}}
|
{{ openInfo?.artoadd }}
|
||||||
</se>
|
</se>
|
||||||
<se label="注册电话" class="mb-sm">
|
<se label="注册电话" class="mb-sm">
|
||||||
{{openInfo?.artotel}}
|
{{ openInfo?.artotel }}
|
||||||
</se>
|
</se>
|
||||||
<se label="开户行" class="mb-sm">
|
<se label="开户行" class="mb-sm">
|
||||||
{{openInfo?.artobank}}
|
{{ openInfo?.artobank }}
|
||||||
</se>
|
</se>
|
||||||
<se label="银行账户" class="mb-sm">
|
<se label="银行账户" class="mb-sm">
|
||||||
{{openInfo?.artoacc}}
|
{{ openInfo?.artoacc }}
|
||||||
</se>
|
</se>
|
||||||
<se label="服务名称" class="mb-sm">
|
<se label="服务名称" class="mb-sm">
|
||||||
{{openInfo?.vatnameLabel}}
|
{{ openInfo?.vatnameLabel }}
|
||||||
</se>
|
</se>
|
||||||
<se label="发票备注栏" class="mb-sm">
|
<se label="发票备注栏" class="mb-sm">
|
||||||
{{openInfo?.vatremarks}}
|
{{ openInfo?.vatremarks }}
|
||||||
</se>
|
</se>
|
||||||
<se label="其它要求" class="mb-sm">
|
<se label="其它要求" class="mb-sm">
|
||||||
{{openInfo?.otherremarks}}
|
{{ openInfo?.otherremarks }}
|
||||||
</se>
|
</se>
|
||||||
<se label="销货清单" class="mb-sm">
|
<se label="销货清单" class="mb-sm">
|
||||||
{{openInfo?.isdetail?'需要':'不需要'}}
|
{{ openInfo?.isdetail ? '需要' : '不需要' }}
|
||||||
</se>
|
</se>
|
||||||
<se label="开票金额" class="mb-sm">
|
<se label="开票金额" class="mb-sm">
|
||||||
{{openInfo?.vatmoney | currency}}
|
{{ openInfo?.vatmoney | currency }}
|
||||||
</se>
|
</se>
|
||||||
<se label="开票日期" required>
|
<se label="开票日期" required>
|
||||||
<nz-date-picker [(ngModel)]="openInfo.invoicedate" nzShowTime nzPlaceHolder="请选择" style=" width: 100%;">
|
<nz-date-picker [(ngModel)]="openInfo.invoicedate" nzShowTime nzPlaceHolder="请选择" style="width: 100%"> </nz-date-picker>
|
||||||
</nz-date-picker>
|
</se>
|
||||||
</se>
|
<se label="发票号码" required>
|
||||||
<se label="发票号码" required>
|
<input nz-input [(ngModel)]="openInfo.invoiceno" placeholder="请输入" />
|
||||||
<input nz-input [(ngModel)]="openInfo.invoiceno" placeholder="请输入" />
|
</se>
|
||||||
</se>
|
<se label="发票代码" required>
|
||||||
<se label="发票代码" required>
|
<input nz-input [(ngModel)]="openInfo.invoiceno2" placeholder="请输入" />
|
||||||
<input nz-input [(ngModel)]="openInfo.invoiceno2" placeholder="请输入" />
|
</se>
|
||||||
</se>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
@ -279,16 +279,16 @@ export class CancellationInvoiceComponent extends BasicTableComponent {
|
|||||||
asyncData: () => this.service.getNetworkFreightForwarder()
|
asyncData: () => this.service.getNetworkFreightForwarder()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
sts: {
|
// sts: {
|
||||||
title: '发票状态',
|
// title: '发票状态',
|
||||||
type: 'string',
|
// type: 'string',
|
||||||
ui: {
|
// ui: {
|
||||||
widget: 'dict-select',
|
// widget: 'dict-select',
|
||||||
containsAllLabel: true,
|
// containsAllLabel: true,
|
||||||
params: { dictKey: 'vatinv:status' },
|
// params: { dictKey: 'vatinv:status' },
|
||||||
containAllLable: true
|
// containAllLable: true
|
||||||
} as SFSelectWidgetSchema
|
// } as SFSelectWidgetSchema
|
||||||
},
|
// },
|
||||||
// or2derSn: {
|
// or2derSn: {
|
||||||
// type: 'string',
|
// type: 'string',
|
||||||
// title: '订单号',
|
// title: '订单号',
|
||||||
|
|||||||
@ -1,3 +1,13 @@
|
|||||||
|
<!--
|
||||||
|
* @Description :
|
||||||
|
* @Version : 1.0
|
||||||
|
* @Author : Shiming
|
||||||
|
* @Date : 2022-05-06 15:31:19
|
||||||
|
* @LastEditors : Shiming
|
||||||
|
* @LastEditTime : 2022-05-10 11:13:28
|
||||||
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\etc-invoiced-logs\\etc-invoiced-logs.component.html
|
||||||
|
* Copyright (C) 2022 huzhenhong. All rights reserved.
|
||||||
|
-->
|
||||||
<!-- <page-header-wrapper [title]="'已开发票'">
|
<!-- <page-header-wrapper [title]="'已开发票'">
|
||||||
</page-header-wrapper>
|
</page-header-wrapper>
|
||||||
<nz-card class="search-box" nzBordered>
|
<nz-card class="search-box" nzBordered>
|
||||||
@ -21,18 +31,26 @@
|
|||||||
</nz-card> -->
|
</nz-card> -->
|
||||||
|
|
||||||
<nz-card class="table-box">
|
<nz-card class="table-box">
|
||||||
<div class="header_box">
|
<div class="header_box">
|
||||||
<label class="page_title"> <label class="driver">|</label> 已开发票</label>
|
<label class="page_title"> <label class="driver">|</label> 已开发票</label>
|
||||||
<div class="mr-sm">
|
<div class="mr-sm">
|
||||||
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
<button nz-button nzDanger [nzLoading]="service.http.loading" (click)="openDrawer()">筛选</button>
|
||||||
<button nz-button nzDanger (click)="exportList()" acl
|
<button nz-button nzDanger (click)="exportList()" acl [acl-ability]="['TICKET-ETC-INVOICE-LOGS-export']">导出</button>
|
||||||
[acl-ability]="['TICKET-ETC-INVOICE-LOGS-export']">导出</button>
|
<button nz-button nzDanger (click)="batchInvoice()" acl [acl-ability]="['TICKET-ETC-INVOICE-LOGS-BatchCreateFicoInpinv']">批量收票</button>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<st #st [data]="service.$api_get_invoice_logs_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
|
</div>
|
||||||
[loading]="false" [scroll]="{ x:'1200px',y:scrollY }">
|
<st
|
||||||
<ng-template st-row="call3No" let-item let-index="index" let-column="column">
|
#st
|
||||||
{{item.driverName}}<br>{{item.driverCellphone}}
|
[data]="service.$api_get_invoice_logs_page"
|
||||||
</ng-template>
|
[columns]="columns"
|
||||||
</st>
|
[req]="{ process: beforeReq }"
|
||||||
|
[res]="{ reName: { list: 'data.records', total: 'data.total' }, process: afterRes }"
|
||||||
|
[page]="{}"
|
||||||
|
[loading]="false"
|
||||||
|
[scroll]="{ x: '1200px', y: scrollY }"
|
||||||
|
>
|
||||||
|
<ng-template st-row="call3No" let-item let-index="index" let-column="column">
|
||||||
|
{{ item.driverName }}<br />{{ item.driverCellphone }}
|
||||||
|
</ng-template>
|
||||||
|
</st>
|
||||||
</nz-card>
|
</nz-card>
|
||||||
@ -41,7 +41,12 @@ export class ETCInvoicedLogsComponent extends BasicTableComponent {
|
|||||||
}
|
}
|
||||||
return requestOptions;
|
return requestOptions;
|
||||||
};
|
};
|
||||||
|
afterRes = (data: any[], rawData?: any) => {
|
||||||
|
return data.map(item => ({
|
||||||
|
...item,
|
||||||
|
disabled: item.isCreationInpinv == '1'
|
||||||
|
}));
|
||||||
|
};
|
||||||
routeTo(item: any) {
|
routeTo(item: any) {
|
||||||
return;
|
return;
|
||||||
this.router.navigate(['/ticket/invoice-requested-detail/1']);
|
this.router.navigate(['/ticket/invoice-requested-detail/1']);
|
||||||
@ -135,6 +140,7 @@ export class ETCInvoicedLogsComponent extends BasicTableComponent {
|
|||||||
|
|
||||||
private initST(): STColumn[] {
|
private initST(): STColumn[] {
|
||||||
return [
|
return [
|
||||||
|
{ title: '', type: 'checkbox', fixed: 'left', width: '50px', className: 'text-center' },
|
||||||
{ title: '发票号码', index: 'invoiceNum', width: 100, type: 'link', click: item => this.routeTo(item) },
|
{ title: '发票号码', index: 'invoiceNum', width: 100, type: 'link', click: item => this.routeTo(item) },
|
||||||
{ title: '发票代码', index: 'invoiceCode', width: 130 },
|
{ title: '发票代码', index: 'invoiceCode', width: 130 },
|
||||||
{ title: '订单号', index: 'billCode', width: 180 },
|
{ title: '订单号', index: 'billCode', width: 180 },
|
||||||
@ -183,7 +189,46 @@ export class ETCInvoicedLogsComponent extends BasicTableComponent {
|
|||||||
{ title: '交易时间', index: 'exTime', type: 'date', width: 150 },
|
{ title: '交易时间', index: 'exTime', type: 'date', width: 150 },
|
||||||
{ title: '开票日期', index: 'invoiceMakeTime', type: 'date', width: 150 },
|
{ title: '开票日期', index: 'invoiceMakeTime', type: 'date', width: 150 },
|
||||||
{ title: '销售方', index: 'sellerName', width: 150 },
|
{ title: '销售方', index: 'sellerName', width: 150 },
|
||||||
{ title: '网络货运人', index: 'enterpriseInfoName', width: 220 }
|
{ title: '网络货运人', index: 'enterpriseInfoName', width: 220 },
|
||||||
|
{
|
||||||
|
title: '操作',
|
||||||
|
width: '120px',
|
||||||
|
fixed: 'right',
|
||||||
|
className: 'text-center',
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
text: '收票',
|
||||||
|
acl: { ability: ['TICKET-ETC-INVOICE-LOGS-createFicoInpinv'] },
|
||||||
|
click: item => {
|
||||||
|
this.batchInvoice(item)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
get selectedRows() {
|
||||||
|
return this.st?.list.filter(item => item.checked) || [];
|
||||||
|
}
|
||||||
|
batchInvoice(item?: { id: any; }) {
|
||||||
|
let params: any[] = [];
|
||||||
|
if(item) {
|
||||||
|
params.push(item.id);
|
||||||
|
} else {
|
||||||
|
if (this.selectedRows.length <= 0) {
|
||||||
|
this.service.msgSrv.error('请选择订单!');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.selectedRows.forEach(item => {
|
||||||
|
params.push(item.id);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
this.service.request(this.service.$api_createFicoInpinv, params).subscribe(res => {
|
||||||
|
if (res) {
|
||||||
|
this.service.msgSrv.success('收票成功!')
|
||||||
|
this.st.load(1);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* @Author: your name
|
* @Author: your name
|
||||||
* @Date: 2021-12-23 16:50:17
|
* @Date: 2021-12-23 16:50:17
|
||||||
* @LastEditTime : 2022-04-28 13:54:14
|
* @LastEditTime : 2022-05-10 10:58:56
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\invoice-requested\\requested-invoice-modal\\requested-invoice-modal.component.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\components\\invoice-requested\\requested-invoice-modal\\requested-invoice-modal.component.ts
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* @Author: your name
|
* @Author: your name
|
||||||
* @Date: 2021-12-29 13:12:35
|
* @Date: 2021-12-29 13:12:35
|
||||||
* @LastEditTime : 2022-04-11 16:41:43
|
* @LastEditTime : 2022-05-10 09:51:30
|
||||||
* @LastEditors : Shiming
|
* @LastEditors : Shiming
|
||||||
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\services\\ticket.service.ts
|
* @FilePath : \\tms-obc-web\\src\\app\\routes\\ticket-management\\services\\ticket.service.ts
|
||||||
@ -150,6 +150,8 @@ export class TicketService extends ShipperBaseService {
|
|||||||
$api_invoicedBillInfo_page = '/api/fcc/invoicedBillInfo/getInvoicedBillInfoPage';
|
$api_invoicedBillInfo_page = '/api/fcc/invoicedBillInfo/getInvoicedBillInfoPage';
|
||||||
// 可开票订单导出
|
// 可开票订单导出
|
||||||
$api_export_InvoicedBillInfoPage = '/api/fcc/invoicedBillInfo/exportInvoicedBillInfoPage'
|
$api_export_InvoicedBillInfoPage = '/api/fcc/invoicedBillInfo/exportInvoicedBillInfoPage'
|
||||||
|
// 批量生成进项发票
|
||||||
|
$api_createFicoInpinv = '/api/fcc/ficoEtcInvoiceL/createFicoInpinv'
|
||||||
|
|
||||||
constructor(public injector: Injector) {
|
constructor(public injector: Injector) {
|
||||||
super(injector);
|
super(injector);
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STColumn, STColumnBadge, STComponent, STData } from '@delon/abc/st';
|
import { STColumn, STComponent, STData } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema, SFUISchema } from '@delon/form';
|
import { SFSchema } from '@delon/form';
|
||||||
import { ModalHelper } from '@delon/theme';
|
import { ModalHelper } from '@delon/theme';
|
||||||
import { DynamicSettingModalComponent, SearchDrawerService } from '@shared';
|
import { DynamicSettingModalComponent, SearchDrawerService } from '@shared';
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
@ -26,7 +26,6 @@ export class UserCenterComponentsDriverCaptainComponent extends BasicTableCompon
|
|||||||
public service: UsermanageService,
|
public service: UsermanageService,
|
||||||
private modal: NzModalService,
|
private modal: NzModalService,
|
||||||
private router: Router,
|
private router: Router,
|
||||||
private ar: ActivatedRoute,
|
|
||||||
private modalHelper: ModalHelper,
|
private modalHelper: ModalHelper,
|
||||||
public searchDrawerService: SearchDrawerService
|
public searchDrawerService: SearchDrawerService
|
||||||
) {
|
) {
|
||||||
@ -57,8 +56,7 @@ export class UserCenterComponentsDriverCaptainComponent extends BasicTableCompon
|
|||||||
return this.st?.list.filter(item => item.checked) || [];
|
return this.st?.list.filter(item => item.checked) || [];
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {}
|
||||||
}
|
|
||||||
dataProcess(data: STData[]): STData[] {
|
dataProcess(data: STData[]): STData[] {
|
||||||
return data.map((i, index) => {
|
return data.map((i, index) => {
|
||||||
i.showSortFlag = false;
|
i.showSortFlag = false;
|
||||||
|
|||||||
@ -42,15 +42,25 @@
|
|||||||
<nz-card [nzLoading]="service.http.loading" [nzBorderless]="true">
|
<nz-card [nzLoading]="service.http.loading" [nzBorderless]="true">
|
||||||
<div class="mb-md">
|
<div class="mb-md">
|
||||||
<div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
|
<div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
|
||||||
<div>
|
<div style="display: flex; justify-content: center;align-items: center;">
|
||||||
<a class="sign"></a>
|
<a class="sign"></a>
|
||||||
<span>个人信息</span>
|
<p style="margin-bottom: 0">
|
||||||
<label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a;" class="ml-md"><i nz-icon
|
个人信息
|
||||||
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
|
<label *ngIf="userIdentityDetail?.certificationStatus===2" style="color: #ff4d4f"><i nz-icon nzType="info-circle"
|
||||||
</label>
|
nzTheme="fill" class="mr-xs"></i>驳回:<span nz-popover [nzPopoverTitle]="titleTemplate1" [nzPopoverContent]="contentTemplate2">
|
||||||
<label *ngIf="userIdentityDetail?.certificationStatus===2" style="color: #ff4d4f;" class="ml-md"><i nz-icon
|
驳回原因
|
||||||
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回 驳回原因:{{userIdentityDetail?.certificationOpinions}}
|
<ng-template #titleTemplate1>
|
||||||
|
原因
|
||||||
|
</ng-template>
|
||||||
|
<ng-template #contentTemplate2>
|
||||||
|
{{userIdentityDetail?.tips}}
|
||||||
|
</ng-template>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
<label *ngIf="userIdentityDetail?.certificationStatus===1" style="color: #52c41a"><i nz-icon nzType="check-circle"
|
||||||
|
nzTheme="fill" class="mr-xs"></i>审核通过
|
||||||
</label>
|
</label>
|
||||||
|
</p>
|
||||||
<label *ngIf="faceStatus == 1" style="color: #bec8c8; position: relative;
|
<label *ngIf="faceStatus == 1" style="color: #bec8c8; position: relative;
|
||||||
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs">人脸识别结果:已发起</i>
|
bottom: 2px;" class="ml-md"><i nz-icon nzType="check-circle" nzTheme="fill" class="mr-xs">人脸识别结果:已发起</i>
|
||||||
</label>
|
</label>
|
||||||
@ -179,15 +189,25 @@
|
|||||||
|
|
||||||
<div class="mb-md">
|
<div class="mb-md">
|
||||||
<div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
|
<div class="font-weight-blod text-md detail-title" style="justify-content: space-between;">
|
||||||
<div>
|
<div style="display: flex; justify-content: center;align-items: center;">
|
||||||
<a class="sign"></a>
|
<a class="sign"></a>
|
||||||
<span>驾驶证信息</span>
|
<p style="margin-bottom: 0">
|
||||||
<label *ngIf="driverDetail?.approvalStatus===20" style="color: #52c41a;" class="ml-md"><i nz-icon
|
驾驶证信息
|
||||||
nzType="check-circle" nzTheme="fill" class="mr-xs"></i>审核通过
|
<label *ngIf="driverDetail?.approvalStatus===30" style="color: #ff4d4f"><i nz-icon nzType="info-circle"
|
||||||
</label>
|
nzTheme="fill" class="mr-xs"></i>驳回:<span nz-popover [nzPopoverTitle]="titleTemplate1" [nzPopoverContent]="contentTemplate1">
|
||||||
<label *ngIf="driverDetail?.approvalStatus===30" style="color: #ff4d4f;" class="ml-md"><i nz-icon
|
驳回原因
|
||||||
nzType="close-circle" nzTheme="fill" class="mr-xs"></i>驳回
|
<ng-template #titleTemplate1>
|
||||||
|
原因
|
||||||
|
</ng-template>
|
||||||
|
<ng-template #contentTemplate1>
|
||||||
|
{{driverDetail?.tips}}
|
||||||
|
</ng-template>
|
||||||
|
</span>
|
||||||
|
</label>
|
||||||
|
<label *ngIf="driverDetail?.approvalStatus===20" style="color: #52c41a"><i nz-icon nzType="check-circle"
|
||||||
|
nzTheme="fill" class="mr-xs"></i>审核通过
|
||||||
</label>
|
</label>
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<ng-container *ngIf="isEditDriver;else editDriverButton">
|
<ng-container *ngIf="isEditDriver;else editDriverButton">
|
||||||
|
|||||||
@ -2,16 +2,11 @@ import { DatePipe } from '@angular/common';
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { apiConf } from '@conf/api.conf';
|
import { apiConf } from '@conf/api.conf';
|
||||||
import { STColumn, STComponent } from '@delon/abc/st';
|
import { STColumn } from '@delon/abc/st';
|
||||||
import { SFComponent, SFDateWidgetSchema, SFSchema, SFTagWidgetSchema, SFTextWidgetSchema, SFUISchema } from '@delon/form';
|
import { _HttpClient } from '@delon/theme';
|
||||||
import { ModalHelper, _HttpClient } from '@delon/theme';
|
|
||||||
import { NzImageService } from 'ng-zorro-antd/image';
|
import { NzImageService } from 'ng-zorro-antd/image';
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
|
||||||
import { NzModalService } from 'ng-zorro-antd/modal';
|
import { NzModalService } from 'ng-zorro-antd/modal';
|
||||||
import { Subject } from 'rxjs';
|
|
||||||
import { ImageViewComponent } from 'src/app/shared/components/imagelist';
|
|
||||||
import { UsermanageService } from '../../../services/usercenter.service';
|
import { UsermanageService } from '../../../services/usercenter.service';
|
||||||
import { debounceTime } from 'rxjs/operators';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-usercenter-components-driver-detail',
|
selector: 'app-usercenter-components-driver-detail',
|
||||||
@ -73,6 +68,8 @@ export class UserCenterComponentsDriverDetailComponent implements OnInit {
|
|||||||
) {}
|
) {}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
console.log(this.route.snapshot.queryParams);
|
||||||
|
|
||||||
this.initData();
|
this.initData();
|
||||||
this.initDetailByCode();
|
this.initDetailByCode();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
|
||||||
import { STColumn, STComponent } from '@delon/abc/st';
|
import { STColumn, STComponent } from '@delon/abc/st';
|
||||||
import { SFComponent, SFSchema } from '@delon/form';
|
import { SFComponent, SFSchema } from '@delon/form';
|
||||||
import { DynamicSettingModalComponent, SearchDrawerService } from '@shared';
|
import { DynamicSettingModalComponent, SearchDrawerService } from '@shared';
|
||||||
|
|||||||
@ -62,8 +62,7 @@ export class UserCenterComponentsDriverComponent extends BasicTableComponent imp
|
|||||||
return params;
|
return params;
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {}
|
||||||
}
|
|
||||||
|
|
||||||
selectChange(e: any) {
|
selectChange(e: any) {
|
||||||
this.resourceStatus = e;
|
this.resourceStatus = e;
|
||||||
@ -306,7 +305,12 @@ export class UserCenterComponentsDriverComponent extends BasicTableComponent imp
|
|||||||
{
|
{
|
||||||
text: '查看<br/>',
|
text: '查看<br/>',
|
||||||
click: item => {
|
click: item => {
|
||||||
this.router.navigate(['./detail', item.appUserId], { relativeTo: this.ar });
|
this.router.navigate(['./detail', item.appUserId], {
|
||||||
|
relativeTo: this.ar,
|
||||||
|
queryParams: {
|
||||||
|
status: item.driverLicenseStatus
|
||||||
|
}
|
||||||
|
});
|
||||||
},
|
},
|
||||||
acl: { ability: ['USERCENTER-DRIVER-LIST-view'] }
|
acl: { ability: ['USERCENTER-DRIVER-LIST-view'] }
|
||||||
},
|
},
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { STChange, STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
import { STChange, STColumn, STComponent, STData, STRequestOptions } from '@delon/abc/st';
|
||||||
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
import { SFComponent, SFDateWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { SearchDrawerService } from '@shared';
|
import { SearchDrawerService } from '@shared';
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { Router, ActivatedRoute } from '@angular/router';
|
|
||||||
import { STColumn, STComponent, STRequestOptions, STData, STChange } from '@delon/abc/st';
|
import { STColumn, STComponent, STRequestOptions, STData, STChange } from '@delon/abc/st';
|
||||||
import { SFUISchema, SFSchema, SFComponent, SFDateWidgetSchema } from '@delon/form';
|
import { SFUISchema, SFSchema, SFComponent, SFDateWidgetSchema } from '@delon/form';
|
||||||
import { ShipperBaseService, DynamicSettingModalComponent, SearchDrawerService } from '@shared';
|
import { ShipperBaseService, DynamicSettingModalComponent, SearchDrawerService } from '@shared';
|
||||||
|
|||||||
@ -48,30 +48,31 @@
|
|||||||
保存
|
保存
|
||||||
</button>
|
</button>
|
||||||
<button [disabled]="false" nz-button nzDanger (click)="auditPass(true)"
|
<button [disabled]="false" nz-button nzDanger (click)="auditPass(true)"
|
||||||
*ngIf="detailData?.approvalStatus===10" acl [acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-pass']">
|
*ngIf="detailData?.approvalStatus===10" acl
|
||||||
|
[acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-pass','USERCENTER-FREIGHT-ENTERPRISE-D-audit']">
|
||||||
通过
|
通过
|
||||||
</button>
|
</button>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-template #editButton>
|
<ng-template #editButton>
|
||||||
<ng-container *ngIf="detailData?.approvalStatus===10">
|
<ng-container *ngIf="detailData?.approvalStatus===10">
|
||||||
<button [disabled]="false" nz-button nzDanger (click)="auditPass(false)" acl
|
<button [disabled]="false" nz-button nzDanger (click)="auditPass(false)" acl
|
||||||
[acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-pass']">
|
[acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-pass','USERCENTER-FREIGHT-ENTERPRISE-D-audit']">
|
||||||
通过
|
通过
|
||||||
</button>
|
</button>
|
||||||
<button [disabled]="false" nz-button nzDanger (click)="auditNo()" acl
|
<button [disabled]="false" nz-button nzDanger (click)="auditNo()" acl
|
||||||
[acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-pass']">
|
[acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-pass','USERCENTER-FREIGHT-ENTERPRISE-D-audit']">
|
||||||
驳回
|
驳回
|
||||||
</button>
|
</button>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<ng-container *ngIf="detailData?.approvalStatus!=10">
|
<ng-container *ngIf="detailData?.approvalStatus!=10">
|
||||||
<button [disabled]="false" nz-button nzDanger nz-popconfirm [nzPopconfirmTitle]="enable"
|
<button [disabled]="false" nz-button nzDanger nz-popconfirm [nzPopconfirmTitle]="enable"
|
||||||
(nzOnConfirm)="freezeOrResume(0)" nzPopconfirmPlacement="bottomRight" *ngIf="detailData?.stateLocked"
|
(nzOnConfirm)="freezeOrResume(0)" nzPopconfirmPlacement="bottomRight" *ngIf="detailData?.stateLocked"
|
||||||
acl [acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-lock']">
|
acl [acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-lock','USERCENTER-FREIGHT-ENTERPRISE-D-lock']">
|
||||||
启用
|
启用
|
||||||
</button>
|
</button>
|
||||||
<button [disabled]="false" nz-button nzDanger nz-popconfirm [nzPopconfirmTitle]="frozen"
|
<button [disabled]="false" nz-button nzDanger nz-popconfirm [nzPopconfirmTitle]="frozen"
|
||||||
(nzOnConfirm)="freezeOrResume(1)" nzPopconfirmPlacement="bottomRight" *ngIf="!detailData?.stateLocked"
|
(nzOnConfirm)="freezeOrResume(1)" nzPopconfirmPlacement="bottomRight" *ngIf="!detailData?.stateLocked"
|
||||||
acl [acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-lock']">
|
acl [acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-lock','USERCENTER-FREIGHT-ENTERPRISE-D-lock']">
|
||||||
冻结
|
冻结
|
||||||
</button>
|
</button>
|
||||||
<button [disabled]="false" nz-button nzDanger nz-popconfirm [nzPopconfirmTitle]="Payfrozen"
|
<button [disabled]="false" nz-button nzDanger nz-popconfirm [nzPopconfirmTitle]="Payfrozen"
|
||||||
@ -84,7 +85,7 @@
|
|||||||
</button>
|
</button>
|
||||||
</ng-container>
|
</ng-container>
|
||||||
<button [disabled]="false" nz-button nzDanger (click)="ratify()" acl
|
<button [disabled]="false" nz-button nzDanger (click)="ratify()" acl
|
||||||
[acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-save']">
|
[acl-ability]="['USERCENTER-FREIGHT-LIST-DETAIL-save','USERCENTER-FREIGHT-ENTERPRISE-D-save']">
|
||||||
修改
|
修改
|
||||||
</button>
|
</button>
|
||||||
</ng-template>
|
</ng-template>
|
||||||
|
|||||||
@ -1,14 +1,7 @@
|
|||||||
import { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFDateWidgetSchema, SFRadioWidgetSchema, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
import { ShipperBaseService } from '@shared';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { EAEnvironmentService, ShipperBaseService } from '@shared';
|
|
||||||
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
|
||||||
import format from 'date-fns/format';
|
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||||
import { NzUploadFile } from 'ng-zorro-antd/upload';
|
|
||||||
import { Observable, Observer, of } from 'rxjs';
|
|
||||||
import { apiConf } from '@conf/api.conf';
|
|
||||||
import { UsermanageService } from 'src/app/routes/usercenter/services/usercenter.service';
|
import { UsermanageService } from 'src/app/routes/usercenter/services/usercenter.service';
|
||||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
|
|
||||||
@ -23,39 +16,33 @@ export class EditPartnerComponentsAddComponent implements OnInit {
|
|||||||
sts: any;
|
sts: any;
|
||||||
rows: any;
|
rows: any;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
detailData: any = {}
|
detailData: any = {};
|
||||||
ui: SFUISchema = {};
|
ui: SFUISchema = {};
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
public msgSrv: NzMessageService,
|
public msgSrv: NzMessageService,
|
||||||
public http: _HttpClient,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private router: Router,
|
|
||||||
public service: UsermanageService,
|
public service: UsermanageService,
|
||||||
private envSrv: EAEnvironmentService,
|
|
||||||
private modal: NzModalRef,
|
private modal: NzModalRef,
|
||||||
public shipperservice: ShipperBaseService
|
public shipperservice: ShipperBaseService
|
||||||
) { }
|
) {}
|
||||||
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
if(this.sts == '2') {
|
if (this.sts == '2') {
|
||||||
this.initDetailData()
|
this.initDetailData();
|
||||||
}
|
}
|
||||||
this.initSF();
|
this.initSF();
|
||||||
}
|
}
|
||||||
initDetailData() {
|
initDetailData() {
|
||||||
|
|
||||||
const params = {
|
const params = {
|
||||||
id: this.i.id
|
id: this.i.id
|
||||||
}
|
};
|
||||||
this.service.request(this.service.$api_partnerChannelUpdateDetaiList, params).subscribe(res => {
|
this.service.request(this.service.$api_partnerChannelUpdateDetaiList, params).subscribe(res => {
|
||||||
if(res) {
|
if (res) {
|
||||||
this.detailData = res
|
this.detailData = res;
|
||||||
} else {
|
} else {
|
||||||
this.service.msgSrv.error(res.msg)
|
this.service.msgSrv.error(res.msg);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
initSF() {
|
initSF() {
|
||||||
this.schema = {
|
this.schema = {
|
||||||
@ -98,7 +85,7 @@ export class EditPartnerComponentsAddComponent implements OnInit {
|
|||||||
settStartTime: {
|
settStartTime: {
|
||||||
title: '结算起算日期',
|
title: '结算起算日期',
|
||||||
type: 'string',
|
type: 'string',
|
||||||
format: 'date',
|
format: 'date'
|
||||||
},
|
},
|
||||||
remark: {
|
remark: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -107,30 +94,29 @@ export class EditPartnerComponentsAddComponent implements OnInit {
|
|||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
placeholder: '请不要超过50个字',
|
placeholder: '请不要超过50个字',
|
||||||
maxLength: 50,
|
maxLength: 50,
|
||||||
autosize: { minRows: 2, maxRows: 6 },
|
autosize: { minRows: 2, maxRows: 6 }
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
effectiveNode: {
|
effectiveNode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '生效节点',
|
title: '生效节点',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'radio',
|
widget: 'radio',
|
||||||
showRequired: true,
|
showRequired: true
|
||||||
} as SFRadioWidgetSchema,
|
} as SFRadioWidgetSchema,
|
||||||
enum: [
|
enum: [
|
||||||
{ label: '修改成功后立即生效', value: 1 },
|
{ label: '修改成功后立即生效', value: 1 },
|
||||||
{ label: 'CRM流程审核后生效', value: 2 },
|
// { label: 'CRM流程审核通过后生效', value: 2 },
|
||||||
{ label: 'CRM流程审核通过后生效', value: 3 }
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
required: ['channelId', 'remark', 'effectiveNode'],
|
required: ['channelId', 'remark', 'effectiveNode']
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 180,
|
spanLabelFixed: 180,
|
||||||
grid: { span: 18 },
|
grid: { span: 18 },
|
||||||
width: 600,
|
width: 600
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -138,27 +124,27 @@ export class EditPartnerComponentsAddComponent implements OnInit {
|
|||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
close(): void {
|
close(): void {
|
||||||
this.modal.close(true)
|
this.modal.close(true);
|
||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
console.log(this?.rows);
|
console.log(this?.rows);
|
||||||
let enterId : any;
|
let enterId: any;
|
||||||
if(this.sts == '1') {
|
if (this.sts == '1') {
|
||||||
enterId = this.rows
|
enterId = this.rows;
|
||||||
} else {
|
} else {
|
||||||
enterId = [this.i.id]
|
enterId = [this.i.id];
|
||||||
}
|
}
|
||||||
const params = {
|
const params = {
|
||||||
...this.sf?.value,
|
...this.sf?.value,
|
||||||
enterpriceIds: enterId,
|
enterpriceIds: enterId,
|
||||||
settStartTime: this.sf?.value?.settStartTime + ' 00:00:00'
|
settStartTime: this.sf?.value?.settStartTime + ' 00:00:00'
|
||||||
}
|
};
|
||||||
|
|
||||||
this.service.request(this.service.$api_batchUpdateEnterpricePartner, params).subscribe(res => {
|
this.service.request(this.service.$api_batchUpdateEnterpricePartner, params).subscribe(res => {
|
||||||
if(res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('修改成功');
|
this.service.msgSrv.success('修改成功');
|
||||||
this.modal.destroy(true)
|
this.modal.destroy(true);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,16 +1,11 @@
|
|||||||
import { ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core';
|
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||||
import { ActivatedRoute, Router } from '@angular/router';
|
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
||||||
import { SFComponent, SFRadioWidgetSchema, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
|
import { ShipperBaseService } from '@shared';
|
||||||
import { _HttpClient } from '@delon/theme';
|
|
||||||
import { EAEnvironmentService, ShipperBaseService } from '@shared';
|
|
||||||
import differenceInCalendarDays from 'date-fns/differenceInCalendarDays';
|
|
||||||
import format from 'date-fns/format';
|
|
||||||
import { NzMessageService } from 'ng-zorro-antd/message';
|
import { NzMessageService } from 'ng-zorro-antd/message';
|
||||||
import { NzUploadFile } from 'ng-zorro-antd/upload';
|
|
||||||
import { Observable, Observer, of } from 'rxjs';
|
|
||||||
import { apiConf } from '@conf/api.conf';
|
|
||||||
import { UsermanageService } from 'src/app/routes/usercenter/services/usercenter.service';
|
import { UsermanageService } from 'src/app/routes/usercenter/services/usercenter.service';
|
||||||
import { NzModalRef } from 'ng-zorro-antd/modal';
|
import { NzModalRef } from 'ng-zorro-antd/modal';
|
||||||
|
import { map } from 'rxjs/operators';
|
||||||
|
import { of } from 'rxjs';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-ad-components-Sale',
|
selector: 'app-ad-components-Sale',
|
||||||
@ -24,55 +19,80 @@ export class EditSaleComponentsAddComponent implements OnInit {
|
|||||||
sts: any;
|
sts: any;
|
||||||
rows: any;
|
rows: any;
|
||||||
schema: SFSchema = {};
|
schema: SFSchema = {};
|
||||||
detailData: any = {}
|
detailData: any = {};
|
||||||
ui: SFUISchema = {};
|
ui: SFUISchema = {};
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
public msgSrv: NzMessageService,
|
public msgSrv: NzMessageService,
|
||||||
public http: _HttpClient,
|
|
||||||
private route: ActivatedRoute,
|
|
||||||
private router: Router,
|
|
||||||
public service: UsermanageService,
|
public service: UsermanageService,
|
||||||
private envSrv: EAEnvironmentService,
|
|
||||||
private modal: NzModalRef,
|
private modal: NzModalRef,
|
||||||
public shipperservice: ShipperBaseService
|
public shipperservice: ShipperBaseService
|
||||||
|
) {}
|
||||||
) { }
|
|
||||||
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
if(this.sts == '2') {
|
if (this.sts == '2') {
|
||||||
this.initDetailData()
|
this.initDetailData();
|
||||||
}
|
}
|
||||||
this.initSF();
|
this.initSF();
|
||||||
}
|
}
|
||||||
initDetailData() {
|
initDetailData() {
|
||||||
const params = {
|
const params = {
|
||||||
id: this.i.id
|
id: this.i.id
|
||||||
}
|
};
|
||||||
this.service.request(this.service.$api_partnerChannelUpdateDetaiList, params).subscribe(res => {
|
this.service.request(this.service.$api_partnerChannelUpdateDetaiList, params).subscribe(res => {
|
||||||
if(res) {
|
if (res) {
|
||||||
this.detailData = res
|
this.detailData = res;
|
||||||
} else {
|
} else {
|
||||||
this.service.msgSrv.error(res.msg)
|
this.service.msgSrv.error(res.msg);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
initSF() {
|
initSF() {
|
||||||
this.schema = {
|
this.schema = {
|
||||||
properties: {
|
properties: {
|
||||||
|
// channelId: {
|
||||||
|
// type: 'string',
|
||||||
|
// title: '渠道销售修改为',
|
||||||
|
// ui: {
|
||||||
|
// widget: 'select',
|
||||||
|
// placeholder: '请选择',
|
||||||
|
// allowClear: true,
|
||||||
|
// visibleIf: {
|
||||||
|
// _$expand: (value: boolean) => value
|
||||||
|
// },
|
||||||
|
// asyncData: () => this.shipperservice.getChanners()
|
||||||
|
// }
|
||||||
|
// },
|
||||||
channelId: {
|
channelId: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '渠道销售修改为',
|
title: '渠道销售修改为',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'select',
|
widget: 'select',
|
||||||
placeholder: '请选择',
|
serverSearch: true,
|
||||||
|
searchDebounceTime: 300,
|
||||||
|
searchLoadingText: '搜索中...',
|
||||||
allowClear: true,
|
allowClear: true,
|
||||||
visibleIf: {
|
onSearch: (q: any) => {
|
||||||
_$expand: (value: boolean) => value
|
let str = q.replace(/^\s+|\s+$/g, '');
|
||||||
|
let params :any= {}
|
||||||
|
if (str) {
|
||||||
|
console.log(+str);
|
||||||
|
if(+str) {
|
||||||
|
console.log('数字');
|
||||||
|
params.phoneNumber = str
|
||||||
|
} else {
|
||||||
|
console.log('中文');
|
||||||
|
params.name = str
|
||||||
|
}
|
||||||
|
return this.service
|
||||||
|
.request(this.service.$api_get_channel, params)
|
||||||
|
.pipe(map((res: any) => (res as any[]).map(i => ({ label: `${i.name}/${i.telephone}`, value: i.channelId } as SFSchemaEnum))))
|
||||||
|
.toPromise();
|
||||||
|
} else {
|
||||||
|
return of([]);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
asyncData: () => this.shipperservice.getChanners()
|
} as SFSelectWidgetSchema
|
||||||
}
|
|
||||||
},
|
},
|
||||||
remark: {
|
remark: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
@ -81,30 +101,29 @@ export class EditSaleComponentsAddComponent implements OnInit {
|
|||||||
widget: 'textarea',
|
widget: 'textarea',
|
||||||
placeholder: '请不要超过50个字',
|
placeholder: '请不要超过50个字',
|
||||||
maxLength: 50,
|
maxLength: 50,
|
||||||
autosize: { minRows: 2, maxRows: 6 },
|
autosize: { minRows: 2, maxRows: 6 }
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
effectiveNode: {
|
effectiveNode: {
|
||||||
type: 'string',
|
type: 'string',
|
||||||
title: '生效节点',
|
title: '生效节点',
|
||||||
ui: {
|
ui: {
|
||||||
widget: 'radio',
|
widget: 'radio',
|
||||||
showRequired: true,
|
showRequired: true
|
||||||
} as SFRadioWidgetSchema,
|
} as SFRadioWidgetSchema,
|
||||||
enum: [
|
enum: [
|
||||||
{ label: '修改成功后立即生效', value: 1 },
|
{ label: '修改成功后立即生效', value: 1 },
|
||||||
{ label: 'CRM流程审核后生效', value: 2 },
|
// { label: 'CRM流程审核通过后生效', value: 2 },
|
||||||
{ label: 'CRM流程审核通过后生效', value: 3 }
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
required: ['channelId', 'remark', 'effectiveNode'],
|
required: ['channelId', 'remark', 'effectiveNode']
|
||||||
};
|
};
|
||||||
this.ui = {
|
this.ui = {
|
||||||
'*': {
|
'*': {
|
||||||
spanLabelFixed: 180,
|
spanLabelFixed: 180,
|
||||||
grid: { span: 18 },
|
grid: { span: 18 },
|
||||||
width: 600,
|
width: 600
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -112,31 +131,30 @@ export class EditSaleComponentsAddComponent implements OnInit {
|
|||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
save() {
|
save() {
|
||||||
let enterId : any;
|
let enterId: any;
|
||||||
if(this.sts == '1') {
|
if (this.sts == '1') {
|
||||||
enterId = this.rows
|
enterId = this.rows;
|
||||||
} else {
|
} else {
|
||||||
enterId = [this.i.id]
|
enterId = [this.i.id];
|
||||||
}
|
}
|
||||||
this.service.nzModalService.create({
|
this.service.nzModalService.create({
|
||||||
nzContent: '确定提交吗?',
|
nzContent: '确定提交吗?',
|
||||||
nzOnOk: () => {
|
nzOnOk: () => {
|
||||||
const params = {
|
const params = {
|
||||||
...this.sf?.value,
|
...this.sf?.value,
|
||||||
enterpriceIds: enterId,
|
enterpriceIds: enterId
|
||||||
|
};
|
||||||
}
|
|
||||||
this.service.request(this.service.$api_batchUpdateEnterpriceChannel, params).subscribe(res => {
|
this.service.request(this.service.$api_batchUpdateEnterpriceChannel, params).subscribe(res => {
|
||||||
if(res) {
|
if (res) {
|
||||||
this.service.msgSrv.success('修改成功')
|
this.service.msgSrv.success('修改成功');
|
||||||
this.modal.destroy(true)
|
this.modal.destroy(true);
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
close(): void {
|
close(): void {
|
||||||
this.modal.close(true)
|
this.modal.close(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user