This commit is contained in:
Taric Xin
2021-12-29 19:46:29 +08:00
parent f6f17a410d
commit a99a15e570
20 changed files with 425 additions and 131 deletions

View File

@ -83,7 +83,7 @@ export class AbnormalGoldComponent implements OnInit {
placeholder: '请输入'
}
},
ltdid: {
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
@ -157,7 +157,7 @@ export class AbnormalGoldComponent implements OnInit {
private initST(): STColumn[] {
return [
{ title: '银行流水号', index: 'paySerialNumber', width: 150 },
{ title: '网络货运人', index: 'ltdid', width: 120 },
{ title: '网络货运人', index: 'ltdId', width: 120 },
{ title: '银行类型', index: 'callNo', width: 100, type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' } },
{ title: '资金总账号', index: 'callNo', width: 120 },
{ title: '充值金额', index: 'rechargeAmount', width: 100 },

View File

@ -32,24 +32,28 @@ export class DriverAccountDetailComponent implements OnInit {
beforeReq = (requestOptions: STRequestOptions) => {
Object.assign(requestOptions.body, {
ltdid: this.params.ltdid,
ltdId: this.params.ltdId,
projectId: this.params.projectId,
enterpriseId: this.params.enterpriseId,
roleId: this.params.roleId
});
if (this.sf) {
Object.assign(requestOptions.body, { ...this.sf.value });
Object.assign(requestOptions.body, {
...this.sf.value,
createTime: {
start: this.sf.value?.createTime?.[0] || null,
end: this.sf.value?.createTime?.[1] || null
}
});
}
return requestOptions;
};
loadInfo() {
console.log(1);
this.service
.request(this.service.$api_get_driver_account_balance_detail, {
...this.sf?.value,
ltdid: this.params.ltdid,
ltdId: this.params.ltdId,
projectId: this.params.projectId,
enterpriseId: this.params.enterpriseId,
roleId: this.params.roleId,
@ -114,33 +118,26 @@ export class DriverAccountDetailComponent implements OnInit {
nzShowTime: true
} as SFDateWidgetSchema
},
orderSn2: {
transactionNumber: {
type: 'string',
title: '流水号',
ui: {
placeholder: '请输入'
}
},
orderSn3: {
businessNumber: {
type: 'string',
title: '关联单号',
ui: {
placeholder: '请输入'
}
},
receiveName: {
tradeType: {
type: 'string',
title: '交易类型',
enum: [
{ label: '全部', value: '' },
{ label: '订单支付', value: '订单支付' },
{ label: '余额充值', value: '余额充值' },
{ label: '余额提现', value: '余额提现' },
{ label: '资金分配', value: '资金分配' },
{ label: '资金回收', value: '资金回收' }
],
ui: {
widget: 'select',
widget: 'dict-select',
params: { dictKey: 'trade:type' },
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
@ -148,16 +145,12 @@ export class DriverAccountDetailComponent implements OnInit {
},
default: ''
},
receiveName2: {
incomeType: {
type: 'string',
title: '收支类型',
enum: [
{ label: '全部', value: '' },
{ label: '收入', value: '收入' },
{ label: '支出', value: '支出' }
],
ui: {
widget: 'select',
widget: 'dict-select',
params: { dictKey: 'income:type' },
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
@ -171,13 +164,13 @@ export class DriverAccountDetailComponent implements OnInit {
private initST(): STColumn[] {
return [
{ title: '交易时间', index: 'updatedAt', type: 'date' },
{ title: '流水号', index: 'callNo' },
{ title: '交易类型', index: 'callNo' },
{ title: '关联单号', index: 'callNo' },
{ title: '收支类型', index: 'callNo' },
{ title: '交易金额', index: 'callNo' },
{ title: '账户余额', index: 'callNo' }
{ title: '交易时间', index: 'createTime', type: 'date' },
{ title: '流水号', index: 'channelPaySn' },
{ title: '交易类型', index: 'tradeTypeLabel' },
{ title: '关联单号', index: 'businessNumber' },
{ title: '收支类型', index: 'incomeTypeLabel' },
{ title: '交易金额', index: 'amount' },
{ title: '账户余额', index: 'accountBalance' }
];
}
}

View File

@ -78,7 +78,7 @@ export class DriverAccountComponent implements OnInit {
placeholder: '请输入'
}
},
ltdid: {
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
@ -144,7 +144,7 @@ export class DriverAccountComponent implements OnInit {
{ title: '证件号码', index: 'idNo' },
{ title: '手机号', index: 'phone' },
{ title: '网络货运人', index: 'ltdName' },
{ title: '银行类型', index: 'bankType', type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' } },
{ title: '银行类型', index: 'bankTypeLabel' },
{ title: '虚拟账户', index: 'virtualAccount' },
{ title: '可用余额', index: 'availableBalance' },
{ title: '冻结余额', index: 'freezeBalance' },
@ -167,7 +167,7 @@ export class DriverAccountComponent implements OnInit {
availableBalance: item.availableBalance,
enterpriseId: item.enterpriseId,
roleId: item.roleId,
ltdid: item.ltdid
ltdId: item.ltdId
}
})
}

View File

@ -32,7 +32,7 @@ export class FreightAccountDetailComponent implements OnInit {
beforeReq = (requestOptions: STRequestOptions) => {
Object.assign(requestOptions.body, {
ltdid: this.params.ltdid,
ltdId: this.params.ltdId,
projectId: this.params.projectId,
enterpriseId: this.params.enterpriseId,
roleId: this.params.roleId
@ -53,7 +53,7 @@ export class FreightAccountDetailComponent implements OnInit {
this.service
.request(this.service.$api_get_shipper_account_balance_detail, {
...this.sf?.value,
ltdid: this.params.ltdid,
ltdId: this.params.ltdId,
projectId: this.params.projectId,
enterpriseId: this.params.enterpriseId,
roleId: this.params.roleId,
@ -188,17 +188,12 @@ export class FreightAccountDetailComponent implements OnInit {
private initST(): STColumn[] {
return [
{ title: '交易时间', index: 'updatedAt', type: 'date' },
{ title: '交易时间', index: 'createTime', type: 'date' },
{ title: '流水号', index: 'transactionNumber' },
{
title: '交易类型',
index: 'tradeType',
type: 'enum',
enum: { 1: '整车订单退款', 2: '整车订单支付', 3: '提现失败退回', 4: '提现', 5: '充值', 6: '运货订单结算' }
},
{ title: '交易类型', index: 'tradeTypeLabel' },
{ title: '关联单号', index: 'businessNumber' },
{ title: '所属项目', index: 'projectId' },
{ title: '收支类型', index: 'incomeType', type: 'enum', enum: { 1: '收入', 2: '支出' } },
{ title: '收支类型', index: 'incomeTypeLabel' },
{ title: '交易金额', index: 'amount' },
{ title: '账户余额', index: 'accountBalance' }
];

View File

@ -82,7 +82,7 @@ export class FreightAccountComponent implements OnInit {
placeholder: '请输入'
}
},
ltdid: {
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
@ -144,7 +144,7 @@ export class FreightAccountComponent implements OnInit {
{ title: '联系人', index: 'name' },
{ title: '联系人电话', index: 'phone' },
{ title: '网络货运人', index: 'ltdName' },
{ title: '银行类型', index: 'bankType', type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' } },
{ title: '银行类型', index: 'bankTypeLabel' },
{ title: '虚拟账户', index: 'virtualAccount' },
{ title: '可用余额', index: 'availableBalance' },
{ title: '冻结余额', index: 'freezeBalance' },
@ -172,7 +172,7 @@ export class FreightAccountComponent implements OnInit {
projectId: item.projectId,
enterpriseId: item.enterpriseId,
roleId: item.roleId,
ltdid: item.ltdid
ltdId: item.ltdId
}
})
}

View File

@ -25,9 +25,9 @@
<nz-tabset>
<nz-tab nzTitle="全部" (nzClick)="changePaymentStatus()"></nz-tab>
<nz-tab nzTitle="支付中" (nzClick)="changePaymentStatus('3')"></nz-tab>
<nz-tab nzTitle="已支付" (nzClick)="changePaymentStatus('1')"></nz-tab>
<nz-tab nzTitle="支付失败" (nzClick)="changePaymentStatus('4')"></nz-tab>
<nz-tab nzTitle="支付中" (nzClick)="changePaymentStatus('4')"></nz-tab>
<nz-tab nzTitle="已支付" (nzClick)="changePaymentStatus('2')"></nz-tab>
<nz-tab nzTitle="支付失败" (nzClick)="changePaymentStatus('5')"></nz-tab>
</nz-tabset>
<st #st [data]="service.$api_get_order_payment_page" [columns]="columns"
@ -36,16 +36,16 @@
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '370px' }">
<ng-template st-row="orderPaymentCode" let-item let-index="index" let-column="column">
{{ item.orderPaymentCode }} <br> <a>{{ paymentStatusEm[item.paymentStatus] }}</a>
{{ item.orderPaymentCode }} <br> <a>{{ item.paymentStatusLabel }}</a>
</ng-template>
<ng-template st-row="amountDetails" let-item let-index="index" let-column="column">
预付:¥{{ item.price }}<br />附加费:¥ {{ item.surcharge }}
</ng-template>
<ng-template st-row="billCode" let-item let-index="index" let-column="column">
{{ item.billCode }} <br> {{billStatus[item.billStatus] }}
{{ item.billCode }} <br> {{item.billStatusLabel }}
</ng-template>
<ng-template st-row="wayBillCode" let-item let-index="index" let-column="column">
{{ item.wayBillCode }} <br> {{wayBillStatus[item.wayBillStatus ] }}
{{ item.wayBillCode }} <br> {{item.wayBillStatusLabel }}
</ng-template>
<ng-template st-row="driverId" let-item let-index="index" let-column="column">
{{ item.driverName }} <br> {{ item.driverTelephone }} <br> {{ item.driverLicensePlate }}

View File

@ -23,30 +23,6 @@ export class PaymentRecordComponent implements OnInit {
paymentStatus: any = '';
paymentStatusEm: any = {
0: '待支付',
1: '已支付',
2: '已拒绝',
3: '支付中',
4: '支付失败'
};
billStatus: any = {
1: '待接单',
2: '待发车',
3: '运输中',
4: '待签收',
5: '已完成',
6: '已取消'
};
wayBillStatus: any = {
1: '待接单',
2: '待发车',
3: '运输中',
4: '待签收',
5: '已完成',
6: '已取消'
};
constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {}
ngOnInit(): void {}
@ -56,14 +32,14 @@ export class PaymentRecordComponent implements OnInit {
Object.assign(requestOptions.body, {
...this.sf.value,
applyDate: {
start: this.sf.value.applyDate?.[0] || null,
end: this.sf.value.applyDate?.[1] || null
start: this.sf.value.applyDate?.[0] || '',
end: this.sf.value.applyDate?.[1] || ''
},
handlerDate: {
start: this.sf.value.handlerDate?.[0] || null,
end: this.sf.value.handlerDate?.[1] || null
start: this.sf.value.handlerDate?.[0] || '',
end: this.sf.value.handlerDate?.[1] || ''
},
paymentStatus: this.paymentStatus || ''
paymentStatus: this.paymentStatus || null
});
}
return requestOptions;
@ -243,7 +219,7 @@ export class PaymentRecordComponent implements OnInit {
},
default: ''
},
ltdid: {
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
@ -280,10 +256,8 @@ export class PaymentRecordComponent implements OnInit {
},
{
title: '支付类型',
index: 'payType',
width: 130,
type: 'enum',
enum: { 1: '货主支付平台', 2: '平台支付司机', 3: '司机支付车队长' }
index: 'payTypeLabel',
width: 130
},
{ title: '货主', index: 'enterpriseInfoName', width: 100 },
{ title: '订单号', render: 'billCode', width: 120 },
@ -291,10 +265,8 @@ export class PaymentRecordComponent implements OnInit {
{ title: '货源编号', index: 'resourceCode', width: 120 },
{
title: '服务类型',
index: 'serviceType',
width: 150,
type: 'enum',
enum: { '1': '抢单', '2': '指派', '3': '二维码', '4': '手工单' }
index: 'serviceTypeLabel',
width: 150
},
{ title: '承运司机', render: 'driverId', width: 120 },
{ title: '收款人', render: 'captainName', width: 120 },

View File

@ -121,7 +121,7 @@ export class RechargeRecordComponent implements OnInit {
},
default: ''
},
ltdid: {
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
@ -159,7 +159,7 @@ export class RechargeRecordComponent implements OnInit {
return [
{ title: '充值时间', index: 'createTime', type: 'date' },
{ title: '充值单号', index: 'rechargeNo' },
{ title: '网络货运人', index: 'ltdid' },
{ title: '网络货运人', index: 'ltdId' },
{ title: '银行类型', index: 'bankType', type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' } },
{ title: '账户类型', index: 'accountType', type: 'enum', enum: { 1: '平安银行', 2: '浦发银行', 3: '运营商账户' } },
{ title: '账户名称', index: 'rechargeName' },

View File

@ -186,7 +186,7 @@ export class TransactionFlowComponent implements OnInit {
},
default: ''
},
ltdid: {
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
@ -208,33 +208,16 @@ export class TransactionFlowComponent implements OnInit {
return [
{ title: '交易时间', index: 'createTime', width: 150 },
{ title: '流水号', index: 'transactionNumber', width: 150 },
{
title: '交易类型',
index: 'tradeType',
width: 100,
type: 'enum',
enum: {
1: '运费支付',
2: '附加费支付',
3: '运费退款',
4: '附加费退款',
5: '保费支付',
6: '保费退款',
7: '余额充值',
8: '余额提现',
9: '资金分配',
10: '资金回收'
}
},
{ title: '交易类型', index: 'tradeTypeLabel', width: 100 },
{ title: '关联单号', index: 'businessNumber', width: 150 },
{ title: '账户类型', index: 'channelSource', width: 100, enum: { 1: '货主端', 2: '司机端', 3: '运营平台' } },
{ title: '账户名称', index: 'driverName', width: 100 },
{ title: '所属项目', index: 'projectName', width: 100 },
{ title: '收支类型', index: 'incomeType', width: 100, type: 'enum', enum: { 1: '收入', 2: '支出' } },
{ title: '收支类型', index: 'incomeTypeLabel', width: 100 },
{ title: '交易金额', index: 'amount', width: 100 },
{ title: '账户余额', index: 'accountBalance', width: 100 },
{ title: '网络货运人', index: 'ltdName', width: 120 },
{ title: '银行类型', index: 'bankType', width: 100, type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' } },
{ title: '银行类型', index: 'bankTypeLabel', width: 100 },
{ title: '银行流水号', index: 'channelPaySn', width: 120 },
{
title: '操作',

View File

@ -67,7 +67,7 @@
<st #st [data]="service.$api_get_refund_page" [columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[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]="service.http.loading" [scroll]="{ x:'1200px',y: '370px' }" (change)="stChange($event)">
<ng-template st-row="bankCardNumber" let-item let-index="index" let-column="column">

View File

@ -45,6 +45,11 @@ export class WithdrawalsRecordComponent implements OnInit {
return requestOptions;
};
afterRes = (data: any[], rawData?: any) => {
data = data.map(node => ({ ...node, disabled: node.refundStatus !== '1' }));
return data;
};
stChange(e: STChange): void {
switch (e.type) {
case 'checkbox':
@ -61,8 +66,11 @@ export class WithdrawalsRecordComponent implements OnInit {
auditAction(item?: any) {
this.msg = '';
if(!item){
let params: Array<string> = [];
if (item) {
params = [item.id];
} else {
params = this.selectedRows.map(node => node.id);
}
const modal = this.nzModalService.create({
nzTitle: '审核',
@ -74,13 +82,14 @@ export class WithdrawalsRecordComponent implements OnInit {
onClick: () => {
this.service
.request(this.service.$api_disagree_refund, {
refundApplicationId: item.id,
refundApplicationId: params,
msg: this.msg
})
.subscribe(res => {
if (res) {
this.service.msgSrv.success('审核拒绝成功');
modal.destroy();
this.st.load(1);
}
});
}
@ -91,13 +100,14 @@ export class WithdrawalsRecordComponent implements OnInit {
onClick: () => {
this.service
.request(this.service.$api_agree_refund, {
refundApplicationId: item.id,
refundApplicationId: params,
msg: this.msg
})
.subscribe(res => {
if (res) {
this.service.msgSrv.success('审核通过成功');
modal.destroy();
this.st.load(1);
}
});
}
@ -198,7 +208,7 @@ export class WithdrawalsRecordComponent implements OnInit {
}
}
},
ltdid: {
ltdId: {
type: 'string',
title: '网络货运人',
ui: {
@ -233,23 +243,18 @@ export class WithdrawalsRecordComponent implements OnInit {
{ title: '提现时间', index: 'createTime', width: 180 },
{ title: '提现单号', index: 'refundApplyCode', width: 120 },
{ title: '网络货运人', index: 'ltdname', width: 120 },
{ title: '银行类型', index: 'bankType', type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' }, width: 100 },
{ title: '银行类型', index: 'bankTypeLabel', width: 100 },
{ title: '账户类型', index: 'callNo', width: 100 },
{ title: '账户名称', index: 'callNo', width: 100 },
{ title: '虚拟账户', index: 'virtualAccount', width: 100 },
{ title: '提现金额', index: 'amount', width: 100 },
{ title: '提现银行账户', render: 'bankCardNumber', width: 120 },
{
title: '提现状态',
index: 'refundStatus',
type: 'enum',
enum: { '1': '待审核', '2': '提现中', '3': '提现成功', '4': '拒绝提现', '5': '提现失败' },
width: 100
},
{ title: '提现状态', index: 'refundStatusLabel', width: 100 },
{ title: '银行流水号', index: 'bankSerialNumber', width: 120 },
{ title: '失败原因', index: 'failCause', width: 150 },
{
title: '操作',
width: 120,
buttons: [
{
text: '审核',

View File

@ -0,0 +1,5 @@
<page-header-wrapper [title]="''"></page-header-wrapper>
<button nz-button [nzSize]="'small'" (click)="menuImport()" [nzLoading]="service.http.loading">
导入
</button>

View File

@ -0,0 +1,16 @@
:host {
::ng-deep {
.pane-content-left {
padding-right: 12px;
nz-select {
width: 100%;
margin-bottom: 1rem;
border-bottom: 2px solid #15408e;
}
}
.pane-content-right {
padding-left: 12px;
}
}
}

View File

@ -0,0 +1,23 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { MenuManagerComponentsIndexComponent } from './index.component';
describe('MenuManagerComponentsIndexComponent', () => {
let component: MenuManagerComponentsIndexComponent;
let fixture: ComponentFixture<MenuManagerComponentsIndexComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [MenuManagerComponentsIndexComponent],
}).compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(MenuManagerComponentsIndexComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,120 @@
import { Component, OnInit, ViewChild } from '@angular/core';
import { Menu } from '@delon/theme';
import { NzModalService } from 'ng-zorro-antd/modal';
import { MenuManagerService } from './../../services/menu-manager.service';
@Component({
selector: 'app-menu-manager-components-index',
templateUrl: './index.component.html',
styleUrls: ['./index.component.less'],
})
export class MenuManagerComponentsIndexComponent implements OnInit {
selectedPlatform!: { name: string; appId: string; enName: string };
menus: Array<any> = [];
platforms: Array<any> = [];
currentSelectedNode: any;
transferData!: string;
dropType = {
dropPrev: true,
dropNext: true,
dropInner: true,
};
constructor(public service: MenuManagerService, private modal: NzModalService) { }
ngOnInit(): void {
this.initData();
}
initData(): void {
this.platforms = [
{ name: '运维平台', appId: 'D40B4EFC33FC4803864934872A11B0CE', enName: 'scm-soc-ui' },
{ name: '运营后台', appId: '2537B72DDA534361AE4931903F0BFEB3', enName: 'scm-ows-ui' },
{ name: '供应商平台', appId: '0CEE254099064665872B777CF9FCBB6B', enName: 'scm-cvc-ui' },
// { name: '代理商平台', appId: '737BB699C8894B2D81F21FC667A21169', enName: 'scm-cac-ui' },
// { name: '分销商平台', appId: '0D00C7CC306A4CACA5AF95BBD1251980', enName: 'scm-cdc-ui' },
// { name: '开放平台', appId: '7B216DD933CB4922BD9094ED8F96B0B4', enName: 'scm-opc-ui' },
];
}
platformChange(e: { name: string; appId: string }) {
if (e) {
this.loadMenus(e.appId);
} else {
this.menus = [];
this.currentSelectedNode = null;
}
}
loadMenus(appId: string) {
this.service.request(this.service.$api_get_all, { appId }, 'POST', true, 'FORM').subscribe((res) => {
this.menus = res;
});
}
editValueChange(event: any) {
console.log('editChanged', event);
}
menuImport() {
if (!this.selectedPlatform) {
return;
}
this.service.http.request('GET', `assets/tmp/_mock/platform/${this.selectedPlatform.enName}.json`).subscribe((res: any) => {
// console.log(res);
this.addMenu(res.menu);
});
}
addMenu(menus: Array<Menu>, parentId: string = '') {
menus.forEach((r) => {
if (parentId !== '') {
r.parentId = parentId;
}
this.service.request(this.service.$api_get_one, { appId: this.selectedPlatform.appId, i18n: r.i18n }).subscribe((res) => {
// 如果res.data存在则更新菜单
if (res.data) {
r.id = res.data.id;
}
this.service
.addOne({ appId: this.selectedPlatform.appId, ...r, isLeaf: !(r.children && r.children.length > 0) })
.subscribe((result) => {
if (result) {
if (r.children && r.children.length > 0) {
this.addMenu(r.children, result.id);
}
}
});
});
});
this.loadMenus(this.selectedPlatform.appId);
}
addMenuRecursion() {
}
delMenu(appId: string, menus: Array<Menu>) {
if (!menus || menus.length === 0) {
return;
}
let notice = `确认删除菜单[${menus[0].text}]?`;
if (menus.length > 1) {
notice = `确认删除勾选的${menus.length}行菜单记录?`;
}
const ids = menus.map((r) => r.id);
this.modal.confirm({
nzTitle: '<i>删除确认</i>',
nzContent: `<b>${notice}</b><br>是否删除?`,
nzOnOk: () =>
this.service.delMany(ids).subscribe((res) => {
if (res === true) {
this.service.msgSrv.success('删除成功!');
}
}),
});
}
}

View File

@ -0,0 +1,14 @@
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { MenuManagerComponentsIndexComponent } from './components/index/index.component';
const routes: Routes = [
{ path: '', redirectTo: 'index', pathMatch: 'full' },
{ path: 'index', component: MenuManagerComponentsIndexComponent },
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
})
export class MenuManagerRoutingModule {}

View File

@ -0,0 +1,12 @@
import { NgModule, Type } from '@angular/core';
import { SharedModule } from '@shared';
import { MenuManagerComponentsIndexComponent } from './components/index/index.component';
import { MenuManagerRoutingModule } from './menu-manager-routing.module';
const COMPONENTS: Type<void>[] = [MenuManagerComponentsIndexComponent];
const COMPONENTS_NOROUNT: Type<void>[] = [];
@NgModule({
imports: [SharedModule, MenuManagerRoutingModule],
declarations: [...COMPONENTS, ...COMPONENTS_NOROUNT]
})
export class MenuManagerModule {}

View File

@ -0,0 +1,23 @@
import { Injectable, Injector } from '@angular/core';
import { BaseService } from '@shared';
@Injectable({
providedIn: 'root',
})
export class MenuManagerService extends BaseService {
// 新增/更新菜单
$api_add_one = `/scm/cuc/cuc/functionInfo/saveFunctionInfo`;
// 根据应用ID获取所有菜单
$api_get_all = `/scm/cuc/cuc/functionInfo/getAllFunctionInfoByAppId`;
// 根据i18n和应用ID获取菜单
$api_get_one = `/scm/cuc/cuc/functionInfo/getFunctionsInfoByI18n?_allow_badcode=true`;
// 删除多个菜单
$api_del_many = `/scm/cuc/cuc/functionInfo/deletebatchFunctionInfo`;
constructor(public injector: Injector) {
super(injector);
}
}

View File

@ -0,0 +1,132 @@
import { Injectable, Injector } from '@angular/core';
import { BaseService } from '@shared';
@Injectable({
providedIn: 'root',
})
export class UserService extends BaseService {
// 保存单个实例接口地址
$api_save_one = '/tms/cuc/oaUserHarvestAddress/save';
// 保存多个实例接口地址
$api_save_many = '';
// 删除一个实例接口地址
$api_del_one = '';
// 删除多个实例接口地址
$api_del_many = '/tms/cuc/oaUserHarvestAddress/deletebatch';
// 获取单个实例接口地址
$api_get_one = '/bcp/cuc/cuc/userInfo/getUserDetailByUserId';
// 获取多个实例接口地址
$api_get_many = '';
// 获取实例分页数据接口地址
$api_get_page = '/bcp/cuc/cuc/userInfo/getUserInfoListPage';
// 导出接口地址
$api_export = '/bcp/cuc/cuc/userInfo/exportUserList';
// 导入接口地址
$api_import = '';
// 导入模板下载地址
$api_import_download_tpl = '';
// 获取项目列表
$api_getProjectInfoList = '/scm/cuc/cuc/projectInfo/getProjectInfoList';
// 根据项目获取应用列表
$api_getAppInfoListByProjectId = '/scm/cuc/cuc/appInfo/getAppInfoListByProjectId';
// 根据应用获取菜单列表
$api_getAllFunctionInfoByAppId = '/scm/cuc/cuc/functionInfo/getAllFunctionInfoByAppId';
// 获取菜单已拥有的按钮
$api_getFunctionButtonInfo = '/scm/cuc/cuc/functionButton/getFunctionButtonInfo';
// 获取菜单已拥有的数据字典
$api_getFunctionDataInfo = '/scm/cuc/cuc/functionData/getFunctionDataInfo';
// 获取所有按钮
$api_getButtonInfoList = '/scm/cuc/cuc/buttonInfo/getButtonInfoList';
// 获取按钮列表
$api_getButtonInfoPage = '/scm/cuc/cuc/buttonInfo/getButtonInfoPage';
// 新增编辑按钮信息
$api_saveButtonInfo = '/scm/cuc/cuc/buttonInfo/saveButtonInfo';
// 查看菜单信息
$api_getFunctionInfo = '/scm/cuc/cuc/functionInfo/getFunctionInfo';
// 删除
$api_deletebatchButton = '/scm/cuc/cuc/buttonInfo/deletebatchButton';
// 新增 and 编辑
$api_saveFunctionInfo = '/scm/cuc/cuc/functionInfo/saveFunctionInfo';
// 删除菜单(含多个)
$api_deletebatchFunctionInfo = '/scm/cuc/cuc/functionInfo/deletebatchFunctionInfo';
// 字典列表
$api_getDictTree = '/scce/pbc/pbc/dict/getDictTree';
// 删除字典
$api_delete = '/scce/pbc/pbc/dict/delete';
// 删除字典选项
$api_deleteById = '/scce/pbc/pbc/dictItems/deleteById';
// 字典详情
$api_getDictItemsByDictId = '/scce/pbc/pbc/dictItems/getDictItemsByDictId';
// 编辑字典
$api_dictUpdate = '/scce/pbc/pbc/dict/update';
// 新增字典
$api_dictSave = '/scce/pbc/pbc/dict/save';
// 编辑字典选项
$api_dictItemsUpdate = '/scce/pbc/pbc/dictItems/update';
// 新增字典选项
$api_dictItemsSave = '/scce/pbc/pbc/dictItems/save';
// 角色模板列表查询
$api_getRoleTemplateInfoList = '/scm/cuc/cuc/roleTemplateInfo/getRoleTemplateInfoList';
// 删除角色模板(含多个)
$api_removeRoleTemplateInfo = '/scm/cuc/cuc/roleTemplateInfo/removeRoleTemplateInfo';
// 编辑角色模板信息
$api_updateRoleTemplateInfo = '/scm/cuc/cuc/roleTemplateInfo/updateRoleTemplateInfo';
// 获取角色详情
$api_getRoleInfo = '/scm/cuc/cuc/roleInfo/getRoleInfo';
// 角色列表
$api_getAppRoleInfoList = '/scm/cuc/cuc/roleInfo/getAppRoleInfoList';
// 删除角色
$api_removeRoleInfo = '/scm/cuc/cuc/roleInfo/removeRoleInfo';
// 编辑角色
$api_updateRoleInfo = '/scm/cuc/cuc/roleInfo/updateRoleInfo';
// 获取角色模板详情
$api_getRoleTemplateInfo = '/scm/cuc/cuc/roleTemplateInfo/getRoleTemplateInfo';
// 获取角色模板权限
$api_getRoleTemplateAuthority = '/scm/cuc/cuc/roleTemplateInfo/getRoleTemplateAuthority';
// 角色菜单下已拥有按钮权限
$api_getRoleFunctionButtonAuthority = '/scm/cuc/cuc/roleAuthority/getRoleFunctionButtonAuthority';
// 角色菜单下已拥有数据权限
$api_getRoleFunctionDataAuthorit = '/scm/cuc/cuc/roleAuthority/getRoleFunctionDataAuthority';
// 用户角色关系列表
$api_getUserRoleList = '/scm/cuc/cuc/userAuthority/getUserRoleList';
// 删除用户角色关系列表
$api_deleteUserAuthority = '/scm/cuc/cuc/userAuthority/deleteUserAuthority';
// 用户列表
$api_getUserListPage = '/scm/cuc/cuc/userBasicInfo/getUserListPage';
// 获取所有应用
$api_getAppList = '/scm/cuc/cuc/appInfo/getAppList';
// 用户详情
$api_getUserInfo = '/scm/cuc/cuc/userBasicInfo/getUserInfo';
// 获取用户下所有应用
$api_getAppInfoByUserId = '/scm/cuc/cuc/userApp/getAppInfoByUserId';
// 获取用户下所有企业
$api_getUserEnterpriseList = '/scm/cuc/cuc/userEnterprise/getUserEnterpriseList';
// 应用用户列表
$api_getAppUserList = '/scm/cuc/cuc/userApp/getAppUserList';
// 新增应用用户
$api_saveAppUser = '/scm/cuc/cuc/userApp/saveAppUser';
// 编辑应用用户信息
$api_updateAppUser = '/scm/cuc/cuc/userApp/updateAppUser';
// 删除应用用户
$api_deleteAppUser = '/scm/cuc/cuc/userApp/deleteAppUser';
// 获取应用列表
$api_getAppListByLesseeId = '/scm/cuc/cuc/appInfo/getAppListByLesseeId';
// 获取应用用户详情
$api_getAppUser = '/scm/cuc/cuc/userApp/getAppUser';
// 重置密码
$api_resetPw = '/scm/cuc/cuc/userBasicInfo/resetPassword';
// 冻结或恢复应用用户
$api_userApp_freezeOrResume = '/scm/cuc/cuc/userApp/freezeOrResume';
// 新增角色
$api_roleInfo_saveRoleInfo = '/scm/cuc/cuc/roleInfo/saveRoleInfo';
// 编辑角色
$api_roleInfo_updateRoleInfo = '/scm/cuc/cuc/roleInfo/updateRoleInfo';
// 冻结或恢复角色
$api_roleInfo_freezeOrResume = '/scm/cuc/cuc/roleInfo/freezeOrResume';
// 获取角色下用户列表
$api_getRoleUserList = '/scm/cuc/cuc/userAuthority/getRoleUserList';
constructor(public injector: Injector) {
super(injector);
}
}

View File

@ -43,6 +43,7 @@ const routes: Routes = [
{ path: 'waybill-management', loadChildren: () => import('./waybill-management/waybill-management.module').then((m) => m.WaybillManagementModule) },
{ path: 'financial-management', loadChildren: () => import('./financial-management/financial-management.module').then((m) => m.FinancialManagementModule) },
{ path: 'contract-management', loadChildren: () => import('./contract-management/contract-management.module').then((m) => m.ContractManagementManagementModule) },
{ path: 'menu-management', loadChildren: () => import('./menu-manager/menu-manager.module').then((m) => m.MenuManagerModule) },
]
},
// passport