Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop
This commit is contained in:
		| @ -186,6 +186,7 @@ export class DriverAccountComponent extends BasicTableComponent implements OnIni | |||||||
|         buttons: [ |         buttons: [ | ||||||
|           { |           { | ||||||
|             text: '查看明细', |             text: '查看明细', | ||||||
|  |             acl: { ability: ['FINANCIAL-DRIVER-ACOUNT-view'] }, | ||||||
|             click: item => |             click: item => | ||||||
|               this.router.navigate(['/financial-management/driver-account/detail/' + item.id], { |               this.router.navigate(['/financial-management/driver-account/detail/' + item.id], { | ||||||
|                 queryParams: { |                 queryParams: { | ||||||
|  | |||||||
| @ -23,7 +23,12 @@ export class PlatformAccountComponent implements OnInit { | |||||||
|   info: any = {}; |   info: any = {}; | ||||||
|  |  | ||||||
|   static: any = {}; |   static: any = {}; | ||||||
|   constructor(public service: FreightAccountService, private router: Router, private nzModalService: NzModalService, public modal: NzModalService) { } |   constructor( | ||||||
|  |     public service: FreightAccountService, | ||||||
|  |     private router: Router, | ||||||
|  |     private nzModalService: NzModalService, | ||||||
|  |     public modal: NzModalService | ||||||
|  |   ) {} | ||||||
|  |  | ||||||
|   ngOnInit(): void { |   ngOnInit(): void { | ||||||
|     this.loadInfo(); |     this.loadInfo(); | ||||||
| @ -187,6 +192,7 @@ export class PlatformAccountComponent implements OnInit { | |||||||
|         buttons: [ |         buttons: [ | ||||||
|           { |           { | ||||||
|             text: '查看明细 ', |             text: '查看明细 ', | ||||||
|  |             acl: { ability: ['FINANCIAL-PLATFORM-view'] }, | ||||||
|             click: item => |             click: item => | ||||||
|               this.router.navigate(['/financial-management/platform-account/detail/' + item.id], { |               this.router.navigate(['/financial-management/platform-account/detail/' + item.id], { | ||||||
|                 queryParams: { ltdId: item.ltdId, bankType: item.bankType, ltdName: `${item.ltdName}(${item.bankTypeLabel})` } |                 queryParams: { ltdId: item.ltdId, bankType: item.bankType, ltdName: `${item.ltdName}(${item.bankTypeLabel})` } | ||||||
| @ -195,7 +201,7 @@ export class PlatformAccountComponent implements OnInit { | |||||||
|           { |           { | ||||||
|             text: '提现', |             text: '提现', | ||||||
|             click: item => this.withdraw(item), |             click: item => this.withdraw(item), | ||||||
|             iif: (_record) => _record.bankType !== '1' |             iif: _record => _record.bankType !== '1' | ||||||
|           }, |           }, | ||||||
|           // { |           // { | ||||||
|           //   text: '绑定银行卡', |           //   text: '绑定银行卡', | ||||||
| @ -204,8 +210,8 @@ export class PlatformAccountComponent implements OnInit { | |||||||
|           { |           { | ||||||
|             text: '查看银行卡', |             text: '查看银行卡', | ||||||
|             click: item => this.viewBankcard(item), |             click: item => this.viewBankcard(item), | ||||||
|             iif: (_record) => _record.bankType !== '1' |             iif: _record => _record.bankType !== '1' | ||||||
|           }, |           } | ||||||
|         ] |         ] | ||||||
|       } |       } | ||||||
|     ]; |     ]; | ||||||
| @ -225,9 +231,8 @@ export class PlatformAccountComponent implements OnInit { | |||||||
|       } |       } | ||||||
|     }); |     }); | ||||||
|     modalRef.afterOpen.subscribe(() => {}); |     modalRef.afterOpen.subscribe(() => {}); | ||||||
|     modalRef.afterClose.subscribe((result) => { |     modalRef.afterClose.subscribe(result => { | ||||||
|       if (result) this.st.reload(); |       if (result) this.st.reload(); | ||||||
|  |  | ||||||
|     }); |     }); | ||||||
|   } |   } | ||||||
|  |  | ||||||
| @ -244,7 +249,7 @@ export class PlatformAccountComponent implements OnInit { | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   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_exportPlatformAccountBalanceByOperator); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   // 提现 |   // 提现 | ||||||
| @ -264,7 +269,6 @@ export class PlatformAccountComponent implements OnInit { | |||||||
|         // this.getSummary(); |         // this.getSummary(); | ||||||
|         // this.withdrawTable.refresh(); |         // this.withdrawTable.refresh(); | ||||||
|       } |       } | ||||||
|     }) |     }); | ||||||
|   } |   } | ||||||
|  |  | ||||||
| } | } | ||||||
|  | |||||||
| @ -283,10 +283,12 @@ export class VoucherSummaryComponent extends BasicTableComponent implements OnIn | |||||||
|         buttons: [ |         buttons: [ | ||||||
|           { |           { | ||||||
|             text: '浏览', |             text: '浏览', | ||||||
|  |             acl: { ability: ['FINANCIAL-VOUCHER-SUMMARY-view'] }, | ||||||
|             click: (item: any) => this.router.navigate(['/financial-management/voucher-summary/detail/' + item.id]) |             click: (item: any) => this.router.navigate(['/financial-management/voucher-summary/detail/' + item.id]) | ||||||
|           }, |           }, | ||||||
|           { |           { | ||||||
|             text: '列表', |             text: '列表', | ||||||
|  |             acl: { ability: ['FINANCIAL-VOUCHER-SUMMARY-child-list'] }, | ||||||
|             click: (item: any) => this.router.navigate(['/financial-management/voucher-summary/list/' + item.vc2code]) |             click: (item: any) => this.router.navigate(['/financial-management/voucher-summary/list/' + item.vc2code]) | ||||||
|           } |           } | ||||||
|         ] |         ] | ||||||
|  | |||||||
| @ -38,17 +38,25 @@ import { CwcBankCardManagementIndexComponent } from './components/bank-card-mana | |||||||
| const routes: Routes = [ | const routes: Routes = [ | ||||||
|   { path: 'freight-account', component: FreightAccountComponent, data: { guard: { ability: ['FINANCIAL-FREIGHT-ACOUNT-list'] } } }, |   { path: 'freight-account', component: FreightAccountComponent, data: { guard: { ability: ['FINANCIAL-FREIGHT-ACOUNT-list'] } } }, | ||||||
|   { path: 'freight-account/detail/:id', component: FreightAccountDetailComponent }, |   { path: 'freight-account/detail/:id', component: FreightAccountDetailComponent }, | ||||||
|   { path: 'driver-account', component: DriverAccountComponent }, |   { path: 'driver-account', component: DriverAccountComponent, data: { guard: { ability: ['FINANCIAL-DRIVER-ACOUNT-list'] } } }, | ||||||
|   { path: 'driver-account/detail/:id', component: DriverAccountDetailComponent }, |   { | ||||||
|   { path: 'platform-account', component: PlatformAccountComponent }, |     path: 'driver-account/detail/:id', | ||||||
|   { path: 'platform-account/detail/:id', component: PlatformAccountDetailComponent }, |     component: DriverAccountDetailComponent, | ||||||
|  |     data: { guard: { ability: ['FINANCIAL-DRIVER-ACOUNT-DETAIL-view'] } } | ||||||
|  |   }, | ||||||
|  |   { path: 'platform-account', component: PlatformAccountComponent, data: { guard: { ability: ['FINANCIAL-PLATFORM-list'] } } }, | ||||||
|  |   { | ||||||
|  |     path: 'platform-account/detail/:id', | ||||||
|  |     component: PlatformAccountDetailComponent, | ||||||
|  |     data: { guard: { ability: ['FINANCIAL-PLATFORM-DETAIL-detail'] } } | ||||||
|  |   }, | ||||||
|   { path: 'recharge-record', component: RechargeRecordComponent }, |   { path: 'recharge-record', component: RechargeRecordComponent }, | ||||||
|   { path: 'withdrawals-record', component: WithdrawalsRecordComponent }, |   { path: 'withdrawals-record', component: WithdrawalsRecordComponent }, | ||||||
|   { path: 'withdrawals-record/detail/:id', component: WithdrawalsDetailComponent }, |   { path: 'withdrawals-record/detail/:id', component: WithdrawalsDetailComponent }, | ||||||
|   { path: 'refund-record', component: RefundRecordComponent }, |   { path: 'refund-record', component: RefundRecordComponent }, | ||||||
|   { path: 'voucher-management', component: VoucherManagementComponent }, |   { path: 'voucher-management', component: VoucherManagementComponent }, | ||||||
|   { path: 'voucher-management/detail/:id', component: VoucherDetailComponent }, |   { path: 'voucher-management/detail/:id', component: VoucherDetailComponent }, | ||||||
|   { path: 'voucher-summary', component: VoucherSummaryComponent }, |   { path: 'voucher-summary', component: VoucherSummaryComponent, data: { guard: { ability: ['FINANCIAL-VOUCHER-SUMMARY-list'] } } }, | ||||||
|   { path: 'voucher-summary/detail/:id', component: SummaryDetailComponent }, |   { path: 'voucher-summary/detail/:id', component: SummaryDetailComponent }, | ||||||
|   { path: 'voucher-summary/list/:id', component: VoucherListComponent }, |   { path: 'voucher-summary/list/:id', component: VoucherListComponent }, | ||||||
|   { path: 'voucher-summary/list/detail/:id', component: VoucherDetailComponent }, |   { path: 'voucher-summary/list/detail/:id', component: VoucherDetailComponent }, | ||||||
| @ -66,10 +74,18 @@ const routes: Routes = [ | |||||||
|   { path: 'receipt-order/detail/:id', component: ReceiptOrderDetailComponent }, |   { path: 'receipt-order/detail/:id', component: ReceiptOrderDetailComponent }, | ||||||
|   { path: 'advance-collection', component: AdvanceCollectionComponent }, |   { path: 'advance-collection', component: AdvanceCollectionComponent }, | ||||||
|   { path: 'advance-collection/detail/:id', component: AdvanceCollectionDetailComponent }, |   { path: 'advance-collection/detail/:id', component: AdvanceCollectionDetailComponent }, | ||||||
|   { path: 'receivable-order', component: ReceivableOrderComponent }, |   { path: 'receivable-order', component: ReceivableOrderComponent, data: { guard: { ability: ['FINANCIAL-RECEIVABLE-list'] } } }, | ||||||
|   { path: 'receivable-order/detail/:id', component: ReceivableOrderDetailComponent }, |   { | ||||||
|   { path: 'payable-order', component: PayableOrderComponent }, |     path: 'receivable-order/detail/:id', | ||||||
|   { path: 'payable-order/detail/:id', component: PayableOrderDetailComponent }, |     component: ReceivableOrderDetailComponent, | ||||||
|  |     data: { guard: { ability: ['FINANCIAL-RECEIVABLE-DETAIL-view'] } } | ||||||
|  |   }, | ||||||
|  |   { path: 'payable-order', component: PayableOrderComponent, data: { guard: { ability: ['FINANCIAL-PAYABLE-list'] } } }, | ||||||
|  |   { | ||||||
|  |     path: 'payable-order/detail/:id', | ||||||
|  |     component: PayableOrderDetailComponent, | ||||||
|  |     data: { guard: { ability: ['FINANCIAL-PAYABLE-DETAIL-view'] } } | ||||||
|  |   }, | ||||||
|   { path: 'bank-card-management/index', component: CwcBankCardManagementIndexComponent } |   { path: 'bank-card-management/index', component: CwcBankCardManagementIndexComponent } | ||||||
| ]; | ]; | ||||||
|  |  | ||||||
|  | |||||||
| @ -13,11 +13,10 @@ import { RouterModule, Routes } from '@angular/router'; | |||||||
| import { insuranceManagementListComponent } from './components/list/list.component'; | import { insuranceManagementListComponent } from './components/list/list.component'; | ||||||
| import { insuranceManagementSetComponent } from './components/set/set.component'; | import { insuranceManagementSetComponent } from './components/set/set.component'; | ||||||
|  |  | ||||||
|  |  | ||||||
| const routes: Routes = [ | const routes: Routes = [ | ||||||
|   { path: 'list', component: insuranceManagementListComponent }, |   { path: 'list', component: insuranceManagementListComponent, data: { guard: { ability: ['INSURANCE-LIST-search'] } } }, | ||||||
|   { path: 'list-set', component: insuranceManagementSetComponent }, |   { path: 'list-set', component: insuranceManagementSetComponent, data: { guard: { ability: ['INSURANCE-LISTDETAIL-set'] } } } | ||||||
| ] | ]; | ||||||
| @NgModule({ | @NgModule({ | ||||||
|   imports: [RouterModule.forChild(routes)], |   imports: [RouterModule.forChild(routes)], | ||||||
|   exports: [RouterModule] |   exports: [RouterModule] | ||||||
|  | |||||||
| @ -23,8 +23,8 @@ | |||||||
| <nz-card class="content-box"> | <nz-card class="content-box"> | ||||||
|  |  | ||||||
|     <nz-tabset> |     <nz-tabset> | ||||||
|         <nz-tab nzTitle="货主菜单" (nzClick)="changeMemu(0)"></nz-tab> |         <nz-tab nzTitle="货主菜单" (nzClick)="changeMemu(0)" *ngIf="isShowFre"></nz-tab> | ||||||
|         <nz-tab nzTitle="运营后台菜单" (nzClick)="changeMemu(1)"></nz-tab> |         <nz-tab nzTitle="运营后台菜单" (nzClick)="changeMemu(1)" *ngIf="isShowBackEND"></nz-tab> | ||||||
|     </nz-tabset> |     </nz-tabset> | ||||||
|  |  | ||||||
|     <!-- <st #st [data]="service.$api_get_all" [columns]="columns" [expand]="expand" expandRowByClick |     <!-- <st #st [data]="service.$api_get_all" [columns]="columns" [expand]="expand" expandRowByClick | ||||||
| @ -36,7 +36,7 @@ | |||||||
|     </ng-template> |     </ng-template> | ||||||
|   </st> --> |   </st> --> | ||||||
|     <nz-table #expandTable [nzData]="listOfMapData" nzTableLayout="fixed" nzBordered nzSize="small" |     <nz-table #expandTable [nzData]="listOfMapData" nzTableLayout="fixed" nzBordered nzSize="small" | ||||||
|         [nzLoading]="service.http.loading"> |         [nzLoading]="service.http.loading" *ngIf="isShowFre || isShowBackEND"> | ||||||
|         <thead> |         <thead> | ||||||
|             <tr> |             <tr> | ||||||
|                 <!-- <th nzWidth="70px" nzAlign="center">#</th> --> |                 <!-- <th nzWidth="70px" nzAlign="center">#</th> --> | ||||||
| @ -65,7 +65,7 @@ | |||||||
|                         </td> |                         </td> | ||||||
|                         <td nzWidth="100px">{{ item.sorted }}</td> |                         <td nzWidth="100px">{{ item.sorted }}</td> | ||||||
|                         <td nzWidth="150px" nzAlign="center"> |                         <td nzWidth="150px" nzAlign="center"> | ||||||
|                             <a (click)="openDrawer(item)">权限配置</a> |                             <a (click)="openDrawer(item)" acl [acl-ability]="['MENU-AUTH-auth']">权限配置</a> | ||||||
|                         </td> |                         </td> | ||||||
|                     </tr> |                     </tr> | ||||||
|                 </ng-container> |                 </ng-container> | ||||||
|  | |||||||
| @ -1,4 +1,5 @@ | |||||||
| import { Component, OnInit, ViewChild } from '@angular/core'; | import { Component, OnInit, ViewChild } from '@angular/core'; | ||||||
|  | import { ACLService } from '@delon/acl'; | ||||||
| import { SFComponent, SFSchema } from '@delon/form'; | import { SFComponent, SFSchema } from '@delon/form'; | ||||||
| import { EAEnvironmentService } from '@shared'; | import { EAEnvironmentService } from '@shared'; | ||||||
| import { NzDrawerService } from 'ng-zorro-antd/drawer'; | import { NzDrawerService } from 'ng-zorro-antd/drawer'; | ||||||
| @ -34,14 +35,26 @@ export class ApiAuthComponent implements OnInit { | |||||||
|  |  | ||||||
|   mapOfExpandedData: { [key: string]: any[] } = {}; |   mapOfExpandedData: { [key: string]: any[] } = {}; | ||||||
|   listOfMapData: any[] = []; |   listOfMapData: any[] = []; | ||||||
|   constructor(private envSrv: EAEnvironmentService, public service: MenuManagerService, private drawer: NzDrawerService) { |  | ||||||
|  |   isShowBackEND = false; | ||||||
|  |   isShowFre = false; | ||||||
|  |  | ||||||
|  |   constructor( | ||||||
|  |     private envSrv: EAEnvironmentService, | ||||||
|  |     public service: MenuManagerService, | ||||||
|  |     private drawer: NzDrawerService, | ||||||
|  |     private acl: ACLService | ||||||
|  |   ) { | ||||||
|  |     const acls = acl.data.abilities || []; | ||||||
|  |     this.isShowBackEND = acl.data.full || !!acls.find(acl => acl === 'MENU-AUTH-obclist'); | ||||||
|  |     this.isShowFre = acl.data.full || !!acls.find(acl => acl === 'MENU-AUTH-smclist'); | ||||||
|     this.initData(); |     this.initData(); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   ngOnInit(): void {} |   ngOnInit(): void {} | ||||||
|  |  | ||||||
|   initData(): void { |   initData(): void { | ||||||
|     this.selectedPlatform = this.platforms[0]; |     this.selectedPlatform = this.isShowFre ? this.platforms[0] : this.platforms[1]; | ||||||
|     this.loadMemu(this.selectedPlatform.appId); |     this.loadMemu(this.selectedPlatform.appId); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  | |||||||
| @ -23,14 +23,15 @@ | |||||||
| <nz-card class="content-box"> | <nz-card class="content-box"> | ||||||
|  |  | ||||||
|   <nz-tabset [nzTabBarExtraContent]="extraTemplate"> |   <nz-tabset [nzTabBarExtraContent]="extraTemplate"> | ||||||
|     <nz-tab nzTitle="货主菜单" (nzClick)="changeMemu(0)"></nz-tab> |     <nz-tab nzTitle="货主菜单" (nzClick)="changeMemu(0)" *ngIf="isShowFre"></nz-tab> | ||||||
|     <nz-tab nzTitle="运营后台菜单" (nzClick)="changeMemu(1)"></nz-tab> |     <nz-tab nzTitle="运营后台菜单" (nzClick)="changeMemu(1)" *ngIf="isShowBackEND"></nz-tab> | ||||||
|   </nz-tabset> |   </nz-tabset> | ||||||
|   <ng-template #extraTemplate> |   <ng-template #extraTemplate> | ||||||
|     <div class="d-flex align-items-center"> |     <div class="d-flex align-items-center"> | ||||||
|       <div> |       <div> | ||||||
|         <button nz-button nzType="primary" (click)="menuAction('新增菜单')">新增</button> |         <button nz-button nzType="primary" (click)="menuAction('新增菜单')" acl | ||||||
|         <button nz-button nzType="primary" (click)="menuSort()">菜单排序</button> |           [acl-ability]="['MENU-INDEX-add']">新增</button> | ||||||
|  |         <button nz-button nzType="primary" (click)="menuSort()" acl [acl-ability]="['MENU-INDEX-sort']">菜单排序</button> | ||||||
|         <!-- <button nz-button nzType="primary" (click)="menuImport(0)" [disabled]="false" |         <!-- <button nz-button nzType="primary" (click)="menuImport(0)" [disabled]="false" | ||||||
|           *ngIf="selectedPlatform.enName==='tms-smc-web'"> |           *ngIf="selectedPlatform.enName==='tms-smc-web'"> | ||||||
|           导入货主菜单 |           导入货主菜单 | ||||||
| @ -52,7 +53,7 @@ | |||||||
|     </ng-template> |     </ng-template> | ||||||
|   </st> --> |   </st> --> | ||||||
|   <nz-table #expandTable [nzData]="listOfMapData" nzTableLayout="fixed" nzBordered nzSize="small" |   <nz-table #expandTable [nzData]="listOfMapData" nzTableLayout="fixed" nzBordered nzSize="small" | ||||||
|     [nzLoading]="service.http.loading"> |     [nzLoading]="service.http.loading" *ngIf="isShowFre || isShowBackEND"> | ||||||
|     <thead> |     <thead> | ||||||
|       <tr> |       <tr> | ||||||
|         <!-- <th nzWidth="70px" nzAlign="center">#</th> --> |         <!-- <th nzWidth="70px" nzAlign="center">#</th> --> | ||||||
| @ -85,12 +86,12 @@ | |||||||
|             <td nzAlign="center" nzWidth="250px"> |             <td nzAlign="center" nzWidth="250px"> | ||||||
|               <a (click)="menuAction('查看菜单',item,item.parentId,true)">查看</a> |               <a (click)="menuAction('查看菜单',item,item.parentId,true)">查看</a> | ||||||
|               <nz-divider nzType="vertical"></nz-divider> |               <nz-divider nzType="vertical"></nz-divider> | ||||||
|               <a (click)="menuAction('编辑菜单',item,item.parentId)">编辑</a> |               <a (click)="menuAction('编辑菜单',item,item.parentId)" acl [acl-ability]="['MENU-INDEX-edit']">编辑</a> | ||||||
|               <nz-divider nzType="vertical"></nz-divider> |               <nz-divider nzType="vertical"></nz-divider> | ||||||
|               <a (click)="deleteAction(item)">删除</a> |               <a (click)="deleteAction(item)" acl [acl-ability]="['MENU-INDEX-delete']">删除</a> | ||||||
|               <ng-container *ngIf="item.level!==3"> |               <ng-container *ngIf="item.level!==3"> | ||||||
|                 <nz-divider nzType="vertical"></nz-divider> |                 <nz-divider nzType="vertical"></nz-divider> | ||||||
|                 <a (click)="menuAction('新增菜单',null,item.id)">新增子项</a> |                 <a (click)="menuAction('新增菜单',null,item.id)" acl [acl-ability]="['MENU-INDEX-add']">新增子项</a> | ||||||
|               </ng-container> |               </ng-container> | ||||||
|             </td> |             </td> | ||||||
|           </tr> |           </tr> | ||||||
|  | |||||||
| @ -1,5 +1,6 @@ | |||||||
| import { Component, OnInit, ViewChild } from '@angular/core'; | import { Component, OnInit, ViewChild } from '@angular/core'; | ||||||
| import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st'; | import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st'; | ||||||
|  | import { ACLService } from '@delon/acl'; | ||||||
| import { SFComponent, SFSchema } from '@delon/form'; | import { SFComponent, SFSchema } from '@delon/form'; | ||||||
| import { Menu, ModalHelper } from '@delon/theme'; | import { Menu, ModalHelper } from '@delon/theme'; | ||||||
| import { EAEnvironmentService } from '@shared'; | import { EAEnvironmentService } from '@shared'; | ||||||
| @ -37,14 +38,26 @@ export class MenuManagerComponentsIndexComponent implements OnInit { | |||||||
|  |  | ||||||
|   mapOfExpandedData: { [key: string]: any[] } = {}; |   mapOfExpandedData: { [key: string]: any[] } = {}; | ||||||
|   listOfMapData: any[] = []; |   listOfMapData: any[] = []; | ||||||
|   constructor(private envSrv: EAEnvironmentService, public service: MenuManagerService, private modal: NzModalService, private modalHelper: ModalHelper,) { |  | ||||||
|  |   isShowBackEND = false; | ||||||
|  |   isShowFre = false; | ||||||
|  |   constructor( | ||||||
|  |     private envSrv: EAEnvironmentService, | ||||||
|  |     public service: MenuManagerService, | ||||||
|  |     private modal: NzModalService, | ||||||
|  |     private modalHelper: ModalHelper, | ||||||
|  |     private acl: ACLService | ||||||
|  |   ) { | ||||||
|  |     const acls = acl.data.abilities || []; | ||||||
|  |     this.isShowBackEND = acl.data.full || !!acls.find(acl => acl === 'MENU-INDEX-obclist'); | ||||||
|  |     this.isShowFre = acl.data.full || !!acls.find(acl => acl === 'MENU-INDEX-smclist'); | ||||||
|     this.initData(); |     this.initData(); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   ngOnInit(): void {} |   ngOnInit(): void {} | ||||||
|  |  | ||||||
|   initData(): void { |   initData(): void { | ||||||
|     this.selectedPlatform = this.platforms[0]; |     this.selectedPlatform = this.isShowFre ? this.platforms[0] : this.platforms[1]; | ||||||
|     this.loadMemu(this.selectedPlatform.appId); |     this.loadMemu(this.selectedPlatform.appId); | ||||||
|   } |   } | ||||||
|  |  | ||||||
| @ -132,7 +145,7 @@ export class MenuManagerComponentsIndexComponent implements OnInit { | |||||||
|     }; |     }; | ||||||
|     this.modalHelper.create(MenuManagerMenusortComponent, { i: dialogData }, { size: 900 }).subscribe((res: any) => { |     this.modalHelper.create(MenuManagerMenusortComponent, { i: dialogData }, { size: 900 }).subscribe((res: any) => { | ||||||
|       if (res) { |       if (res) { | ||||||
|         console.log('a') |         console.log('a'); | ||||||
|         this.loadMemu(this.selectedPlatform.appId); |         this.loadMemu(this.selectedPlatform.appId); | ||||||
|       } |       } | ||||||
|     }); |     }); | ||||||
|  | |||||||
| @ -5,12 +5,16 @@ import { MenuManagerComponentsIndexComponent } from './components/index/index.co | |||||||
|  |  | ||||||
| const routes: Routes = [ | const routes: Routes = [ | ||||||
|   { path: '', redirectTo: 'index', pathMatch: 'full' }, |   { path: '', redirectTo: 'index', pathMatch: 'full' }, | ||||||
|   { path: 'index', component: MenuManagerComponentsIndexComponent }, |   { | ||||||
|   { path: 'auth', component: ApiAuthComponent }, |     path: 'index', | ||||||
|  |     component: MenuManagerComponentsIndexComponent, | ||||||
|  |     data: { guard: { ability: ['MENU-INDEX-obclist', 'MENU-INDEX-smclist'] } } | ||||||
|  |   }, | ||||||
|  |   { path: 'auth', component: ApiAuthComponent, data: { guard: { ability: ['MENU-AUTH-obclist', 'MENU-AUTH-smclist'] } } } | ||||||
| ]; | ]; | ||||||
|  |  | ||||||
| @NgModule({ | @NgModule({ | ||||||
|   imports: [RouterModule.forChild(routes)], |   imports: [RouterModule.forChild(routes)], | ||||||
|   exports: [RouterModule], |   exports: [RouterModule] | ||||||
| }) | }) | ||||||
| export class MenuManagerRoutingModule {} | export class MenuManagerRoutingModule {} | ||||||
|  | |||||||
| @ -6,13 +6,11 @@ | |||||||
|       </button> |       </button> | ||||||
|     </ng-template> |     </ng-template> | ||||||
|     <ng-template #headerContent> |     <ng-template #headerContent> | ||||||
|       <div class="mb-xs" nz-row> |       <div class="mb-sm common-order-header" nz-row> | ||||||
|         <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> |         <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> | ||||||
|         <h4 class="ml-md">货源编码 : {{ i?.resourceCode }}</h4> |         <b class="ml-md">货源编码 : {{ i?.resourceCode }}</b> | ||||||
|       </div> |       </div> | ||||||
|       <div nz-row> |       <div> | ||||||
|         <div nz-col nzSpan="14" class="text-grey-darker">网络货运人:{{ i?.shipperAppUserName }}</div> |  | ||||||
|         <div nz-col nzSpan="10"> |  | ||||||
|         <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl |         <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl | ||||||
|           [acl-ability]="['SUPPLY-BULK-DETAIL-cancelSupply']">取消货源</button> |           [acl-ability]="['SUPPLY-BULK-DETAIL-cancelSupply']">取消货源</button> | ||||||
|         <button nz-button (click)="updatePrice(i)" *ngIf="i?.resourceStatus === '1'" acl |         <button nz-button (click)="updatePrice(i)" *ngIf="i?.resourceStatus === '1'" acl | ||||||
| @ -20,14 +18,25 @@ | |||||||
|         <button nz-button nzType="primary" nzGhost (click)="placeOrder(i)" acl |         <button nz-button nzType="primary" nzGhost (click)="placeOrder(i)" acl | ||||||
|           [acl-ability]="['SUPPLY-BULK-DETAIL-bulkAnotherOrder']">再下一单</button> |           [acl-ability]="['SUPPLY-BULK-DETAIL-bulkAnotherOrder']">再下一单</button> | ||||||
|       </div> |       </div> | ||||||
|  |       <!-- <div class="common-order-header" nz-row> | ||||||
|  |         <div class="common-grey">网络货运人:{{ i?.shipperAppUserName }}</div> | ||||||
|  |         <div> | ||||||
|  |           <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl | ||||||
|  |             [acl-ability]="['SUPPLY-BULK-DETAIL-cancelSupply']">取消货源</button> | ||||||
|  |           <button nz-button (click)="updatePrice(i)" *ngIf="i?.resourceStatus === '1'" acl | ||||||
|  |             [acl-ability]="['SUPPLY-BULK-DETAIL-updatePrice']">修改单价</button> | ||||||
|  |           <button nz-button nzType="primary" nzGhost (click)="placeOrder(i)" acl | ||||||
|  |             [acl-ability]="['SUPPLY-BULK-DETAIL-bulkAnotherOrder']">再下一单</button> | ||||||
|         </div> |         </div> | ||||||
|       <div class="mt-sm mb-sm" nz-row> |       </div> --> | ||||||
|  |       <!-- <div class="mt-sm mb-sm" nz-row> | ||||||
|         <div> |         <div> | ||||||
|           <b>总费用:<span class="text-red-light text-md">{{ i?.totalAmount | currency: '¥' }}</span></b> |           <b>总费用:<span class="text-red-light text-md">{{ i?.totalAmount | currency: '¥' }}</span></b> | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> --> | ||||||
|       <nz-divider></nz-divider> |       <nz-divider></nz-divider> | ||||||
|       <div sv-container> |       <div sv-container> | ||||||
|  |         <sv label="网络货运人">{{ i?.shipperAppUserName }}</sv> | ||||||
|         <sv label="项目">{{ i?.enterpriseProjectName }}</sv> |         <sv label="项目">{{ i?.enterpriseProjectName }}</sv> | ||||||
|         <sv label="截止时间">{{ i?.deadlineTime }}</sv> |         <sv label="截止时间">{{ i?.deadlineTime }}</sv> | ||||||
|         <sv label="录单员">{{ i?.createUserName }}/{{ i?.createUserPhone }}</sv> |         <sv label="录单员">{{ i?.createUserName }}/{{ i?.createUserPhone }}</sv> | ||||||
| @ -37,13 +46,12 @@ | |||||||
|     </ng-template> |     </ng-template> | ||||||
|   </page-header-wrapper> |   </page-header-wrapper> | ||||||
|   <nz-card [nzBorderless]="true" class="mb0"> |   <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|     <div class="mb-xs" nz-row> |     <div class="mb-sm common-order-header" nz-row> | ||||||
|  |       <div> | ||||||
|         <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> |         <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> | ||||||
|       <h4 class="ml-md">货源编码 : {{ i?.resourceCode }}</h4> |         <b class="ml-md">货源编码 : {{ i?.resourceCode }}</b> | ||||||
|       </div> |       </div> | ||||||
|     <div nz-row> |       <div> | ||||||
|       <div nz-col nzSpan="14" class="text-grey-darker">网络货运人:{{ i?.shipperAppUserName }}</div> |  | ||||||
|       <div nz-col nzSpan="10"> |  | ||||||
|         <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl |         <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl | ||||||
|           [acl-ability]="['SUPPLY-BULK-DETAIL-cancelSupply']">取消货源</button> |           [acl-ability]="['SUPPLY-BULK-DETAIL-cancelSupply']">取消货源</button> | ||||||
|         <button nz-button (click)="updatePrice(i)" *ngIf="i?.resourceStatus === '1'" acl |         <button nz-button (click)="updatePrice(i)" *ngIf="i?.resourceStatus === '1'" acl | ||||||
| @ -52,13 +60,14 @@ | |||||||
|           [acl-ability]="['SUPPLY-BULK-DETAIL-bulkAnotherOrder']">再下一单</button> |           [acl-ability]="['SUPPLY-BULK-DETAIL-bulkAnotherOrder']">再下一单</button> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|     <div class="mt-sm mb-sm" nz-row> |     <!-- <div class="mt-sm mb-sm" nz-row> | ||||||
|       <div> |       <div> | ||||||
|         <b>总费用:<span class="text-red-light text-md">{{ i?.totalAmount | currency: '¥' }}</span></b> |         <b>总费用:<span class="text-red-light text-md">{{ i?.totalAmount | currency: '¥' }}</span></b> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> --> | ||||||
|     <nz-divider></nz-divider> |     <nz-divider class="divider-margin"></nz-divider> | ||||||
|     <div sv-container> |     <div class="mb-lg" sv-container> | ||||||
|  |       <sv label="网络货运人">{{ i?.shipperAppUserName }}</sv> | ||||||
|       <sv label="项目">{{ i?.enterpriseProjectName }}</sv> |       <sv label="项目">{{ i?.enterpriseProjectName }}</sv> | ||||||
|       <sv label="截止时间">{{ i?.deadlineTime }}</sv> |       <sv label="截止时间">{{ i?.deadlineTime }}</sv> | ||||||
|       <sv label="录单员">{{ i?.createUserName }}/{{ i?.createUserPhone }}</sv> |       <sv label="录单员">{{ i?.createUserName }}/{{ i?.createUserPhone }}</sv> | ||||||
| @ -66,8 +75,8 @@ | |||||||
|       <sv label="服务类型">{{ i?.serviceTypeLabel }} </sv> |       <sv label="服务类型">{{ i?.serviceTypeLabel }} </sv> | ||||||
|     </div> |     </div> | ||||||
|     <div class="approval-status"> |     <div class="approval-status"> | ||||||
|       <div style="width: 60%; margin: 0 auto"> |       <div class="step-row"> | ||||||
|         <nz-steps style="width: 70%; margin: 0 auto" [nzLabelPlacement]="'vertical'"> |         <nz-steps [nzLabelPlacement]="'vertical'"> | ||||||
|           <nz-step [nzStatus]="i?.resourceStatus !== '1'?'finish':'process'" nzIcon="solution" |           <nz-step [nzStatus]="i?.resourceStatus !== '1'?'finish':'process'" nzIcon="solution" | ||||||
|             [nzDescription]="i?.createTime" nzTitle="下单"></nz-step> |             [nzDescription]="i?.createTime" nzTitle="下单"></nz-step> | ||||||
|           <nz-step *ngIf="i?.resourceStatus === '1' || i?.resourceStatus === '4' " |           <nz-step *ngIf="i?.resourceStatus === '1' || i?.resourceStatus === '4' " | ||||||
| @ -80,13 +89,22 @@ | |||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|     <div class="mt-md"> |     <div class="mt-md"> | ||||||
|       <h4 class="text-md">装货卸货信息 |       <div class="font-weight-blod text-md detail-title"> | ||||||
|  |         <a class="sign mr-xs"></a> | ||||||
|  |         <span>装货卸货信息</span> | ||||||
|         <span class="ml-sm text-sm">( |         <span class="ml-sm text-sm">( | ||||||
|           <label>{{ i?.loadingCount || '一' }}装</label> |           <label>{{ i?.loadingCount || '一' }}装</label> | ||||||
|           <label>{{ i?.unloadingCount || '一' }}卸</label> |           <label>{{ i?.unloadingCount || '一' }}卸</label> | ||||||
|           ) |           ) | ||||||
|         </span> |         </span> | ||||||
|       </h4> |       </div> | ||||||
|  |       <!-- <h4 class="text-md">装货卸货信息 | ||||||
|  |         <span class="ml-sm text-sm">( | ||||||
|  |           <label>{{ i?.loadingCount || '一' }}装</label> | ||||||
|  |           <label>{{ i?.unloadingCount || '一' }}卸</label> | ||||||
|  |           ) | ||||||
|  |         </span> | ||||||
|  |       </h4> --> | ||||||
|       <div nz-row [nzGutter]="24"> |       <div nz-row [nzGutter]="24"> | ||||||
|         <div nz-col [nzSpan]="12"> |         <div nz-col [nzSpan]="12"> | ||||||
|           <div class="handling-info p-md"> |           <div class="handling-info p-md"> | ||||||
| @ -95,7 +113,7 @@ | |||||||
|                 <div class="handling-info-icon loading-bg">装</div> |                 <div class="handling-info-icon loading-bg">装</div> | ||||||
|                 <div class="info"> |                 <div class="info"> | ||||||
|                   <h4>装货地:{{ item?.province }}{{ item?.city }}{{ item?.area }}{{ item?.detailedAddress }}</h4> |                   <h4>装货地:{{ item?.province }}{{ item?.city }}{{ item?.area }}{{ item?.detailedAddress }}</h4> | ||||||
|                   <p>联系人:{{ item?.appUserName }}/{{ item?.contractTelephone }}</p> |                   <p class="mb0">联系人:{{ item?.appUserName }}/{{ item?.contractTelephone }}</p> | ||||||
|                 </div> |                 </div> | ||||||
|               </div> |               </div> | ||||||
|             </div> |             </div> | ||||||
| @ -109,7 +127,7 @@ | |||||||
|                 <div class="handling-info-icon unloaing-bg">卸</div> |                 <div class="handling-info-icon unloaing-bg">卸</div> | ||||||
|                 <div class="info"> |                 <div class="info"> | ||||||
|                   <h4>卸货地:{{ item?.province }}{{ item?.city }}{{ item?.area }}{{ item?.detailedAddress }}</h4> |                   <h4>卸货地:{{ item?.province }}{{ item?.city }}{{ item?.area }}{{ item?.detailedAddress }}</h4> | ||||||
|                   <p>联系人:{{ item?.appUserName }}/{{ item?.contractTelephone }}</p> |                   <p class="mb0">联系人:{{ item?.appUserName }}/{{ item?.contractTelephone }}</p> | ||||||
|                 </div> |                 </div> | ||||||
|               </div> |               </div> | ||||||
|             </div> |             </div> | ||||||
| @ -140,6 +158,15 @@ | |||||||
|         <sv label="用车需求"> |         <sv label="用车需求"> | ||||||
|           {{item.carModelLabel || '--'}} / {{item.carLengthLabel || '--'}}<span *ngIf="item.carLength !=='999'">米</span> |           {{item.carModelLabel || '--'}} / {{item.carLengthLabel || '--'}}<span *ngIf="item.carLength !=='999'">米</span> | ||||||
|         </sv> |         </sv> | ||||||
|  |         <sv label="承运司机" | ||||||
|  |           *ngIf="i?.carrierInformationVO?.driverTelephone && (i?.carrierInformationVO?.driverTelephone !== i?.payeePhone)"> | ||||||
|  |           {{i?.carrierInformationVO?.driverName || '--'}} / {{i?.carrierInformationVO?.driverTelephone || '--'}} / | ||||||
|  |           {{i?.carrierInformationVO?.driverLicensePlate || '--'}} | ||||||
|  |         </sv> | ||||||
|  |         <sv label="车型车长载重"> | ||||||
|  |           {{i?.driverCarModelLabel || '--'}} / {{(i?.driverCarLength || '--') +'米'}} / {{(i?.driverCarWeight || | ||||||
|  |           '--')+'吨'}} | ||||||
|  |         </sv> | ||||||
|         <!-- <sv label="承运信息"> |         <!-- <sv label="承运信息"> | ||||||
|           {{i?.carrierInformationVO?.driverName}} / {{i?.carrierInformationVO?.driverTelephone}} / |           {{i?.carrierInformationVO?.driverName}} / {{i?.carrierInformationVO?.driverTelephone}} / | ||||||
|           {{i?.carrierInformationVO?.driverLicensePlate}} |           {{i?.carrierInformationVO?.driverLicensePlate}} | ||||||
| @ -152,26 +179,35 @@ | |||||||
|  |  | ||||||
|   </nz-card> |   </nz-card> | ||||||
|  |  | ||||||
|   <nz-card [nzBorderless]="true" class="mb0" nzTitle="运费信息"> |   <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|  |     <div class="font-weight-blod text-md detail-title"> | ||||||
|  |       <a class="sign mr-xs"></a> | ||||||
|  |       <span>运费信息</span> | ||||||
|  |       <span class="pl-sm text-warning">(到货后{{i?.paymentDays}}天内支付运费)</span> | ||||||
|  |     </div> | ||||||
|     <div> |     <div> | ||||||
|       <div nz-row> |       <div nz-row> | ||||||
|         <div *ngFor="let item of i?.goodsInfoVOList" nz-col nzSpan="24"> |         <div *ngFor="let item of i?.goodsInfoVOList" nz-col nzSpan="24"> | ||||||
|           <div> |  | ||||||
|             <p class="text-warning-light mb-xs text-right">收货后{{ i?.paymentDays }}天内支付运费</p> |  | ||||||
|             <p class="mb-xs text-right"> {{ settlementBasis[item?.settlementBasis] }},{{ rule[item?.rule] }}</p> |  | ||||||
|           </div> |  | ||||||
|           <nz-divider class="mb-xs mt-xs"></nz-divider> |  | ||||||
|           <div class="text-right"> |           <div class="text-right"> | ||||||
|             <label>运费单价:</label> |             <label>运费单价:</label> | ||||||
|             <span class="text-error-dark text-xxl">{{ item?.freightPrice | currency: '¥' }} {{ |             <span class="text-error-dark text-xxl">{{ item?.freightPrice | currency: '¥' }} {{ | ||||||
|               freightType[item?.freightType] }}</span> |               freightType[item?.freightType] }}</span> | ||||||
|             <span>(附加费率{{i?.rate * 100 | number: '0.2-2'}}%)</span> |             <span>(附加费率{{i?.rate * 100 | number: '0.2-2'}}%)</span> | ||||||
|           </div> |           </div> | ||||||
|  |           <nz-divider class="mb-xs mt-xs"></nz-divider> | ||||||
|  |           <div> | ||||||
|  |             <!-- <p class="text-warning-light mb-xs text-right">收货后{{ i?.paymentDays }}天内支付运费</p> --> | ||||||
|  |             <p class="mb0 text-right"> {{ settlementBasis[item?.settlementBasis] }},{{ rule[item?.rule] }}</p> | ||||||
|  |           </div> | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|   </nz-card> |   </nz-card> | ||||||
|   <nz-card [nzBorderless]="true" class="mb0" nzTitle="关联订单"> |   <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|  |     <div class="font-weight-blod text-md detail-title"> | ||||||
|  |       <a class="sign mr-xs"></a> | ||||||
|  |       <span>关联订单</span> | ||||||
|  |     </div> | ||||||
|     <sv-container col="5"> |     <sv-container col="5"> | ||||||
|       <sv [label]="item?.wayBillStatusLabel" *ngFor="let item of i?.wayBillClassifiedStatisticsVOList"> |       <sv [label]="item?.wayBillStatusLabel" *ngFor="let item of i?.wayBillClassifiedStatisticsVOList"> | ||||||
|         (<span [ngClass]="{ 'text-primary': item?.count > 0 }">{{ item?.count }}</span>) |         (<span [ngClass]="{ 'text-primary': item?.count > 0 }">{{ item?.count }}</span>) | ||||||
| @ -190,7 +226,11 @@ | |||||||
|       </sv> --> |       </sv> --> | ||||||
|     </sv-container> |     </sv-container> | ||||||
|   </nz-card> |   </nz-card> | ||||||
|   <nz-card [nzBorderless]="true" class="mb0" nzTitle="补充信息"> |   <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|  |     <div class="font-weight-blod text-md detail-title"> | ||||||
|  |       <a class="sign mr-xs"></a> | ||||||
|  |       <span>补充信息</span> | ||||||
|  |     </div> | ||||||
|     <sv-container> |     <sv-container> | ||||||
|       <sv label="是否回单"> |       <sv label="是否回单"> | ||||||
|         {{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }} |         {{ i?.supplementaryInformationVO?.stateReceipt ? '是' : '否' }} | ||||||
| @ -213,10 +253,14 @@ | |||||||
|       </sv> |       </sv> | ||||||
|     </sv-container> |     </sv-container> | ||||||
|   </nz-card> |   </nz-card> | ||||||
|   <nz-card [nzBorderless]="true" class="mb0" nzTitle="操作日志"> |   <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|  |     <div class="font-weight-blod text-md detail-title"> | ||||||
|  |       <a class="sign mr-xs"></a> | ||||||
|  |       <span>操作日志</span> | ||||||
|  |     </div> | ||||||
|     <st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns" [page]="{}" |     <st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns" [page]="{}" | ||||||
|       [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" |       [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" | ||||||
|       [res]="{ reName: { list: 'data.records', total: 'data.total' } }"> |       [res]="{ reName: { list: 'data.records', total: 'data.total' } }" [size]="'small'"> | ||||||
|     </st> |     </st> | ||||||
|   </nz-card> |   </nz-card> | ||||||
| </div> | </div> | ||||||
|  | |||||||
| @ -48,7 +48,7 @@ | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   .handling-info { |   .handling-info { | ||||||
|     min-height: 100px; |     min-height: 90px; | ||||||
|     border: 1px solid #ccc; |     border: 1px solid #ccc; | ||||||
|  |  | ||||||
|     .loading-row { |     .loading-row { | ||||||
|  | |||||||
| @ -260,9 +260,9 @@ | |||||||
|     <button *ngIf="this.PageStatus == '整车修改'" nz-button nzType="primary" style="margin-left: 48px" |     <button *ngIf="this.PageStatus == '整车修改'" nz-button nzType="primary" style="margin-left: 48px" | ||||||
|       (click)="submitConfirm()" acl [acl-ability]="['SUPPLY-VEHICLE-AMEND-submitChange']">提交修改</button> |       (click)="submitConfirm()" acl [acl-ability]="['SUPPLY-VEHICLE-AMEND-submitChange']">提交修改</button> | ||||||
|     <button nz-button nzType="primary" *ngIf="this.PageStatus == '整车下一单'" (click)="submitConfirm('assign')" acl |     <button nz-button nzType="primary" *ngIf="this.PageStatus == '整车下一单'" (click)="submitConfirm('assign')" acl | ||||||
|       [acl-ability]="['SUPPLY-BULK-PLACEORDER-vehicleDesignate']">指派熟车</button> |       [acl-ability]="['SUPPLY-VEHICLE-PLACEORDER-vehicleDesignate']">指派熟车</button> | ||||||
|     <button *ngIf="this.PageStatus == '整车下一单'" nz-button nzType="primary" style="margin-left: 48px" |     <button *ngIf="this.PageStatus == '整车下一单'" nz-button nzType="primary" style="margin-left: 48px" | ||||||
|       (click)="submitConfirm('publish')" acl |       (click)="submitConfirm('publish')" acl | ||||||
|       [acl-ability]="['SUPPLY-BULK-PLACEORDER-vehicleAnotherOrder']">司机抢单</button> |       [acl-ability]="['SUPPLY-VEHICLE-PLACEORDER-vehicleAnotherOrder']">司机抢单</button> | ||||||
|   </div> |   </div> | ||||||
| </nz-card> | </nz-card> | ||||||
|  | |||||||
| @ -6,48 +6,14 @@ | |||||||
|           <i nz-icon nzType="left" nzTheme="outline"></i> |           <i nz-icon nzType="left" nzTheme="outline"></i> | ||||||
|         </button> |         </button> | ||||||
|       </ng-template> |       </ng-template> | ||||||
|       <ng-template #headerContent> |  | ||||||
|         <div class="mb-xs" nz-row> |  | ||||||
|           <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> |  | ||||||
|           <h4 class="ml-md">货源编码 : {{ i?.resourceCode }}</h4> |  | ||||||
|         </div> |  | ||||||
|         <div nz-row> |  | ||||||
|           <div nz-col nzSpan="14" class="text-grey-darker">网络货运人:{{ i?.enterpriseInfoName }}</div> |  | ||||||
|           <div nz-col nzSpan="10"> |  | ||||||
|             <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl |  | ||||||
|               [acl-ability]="['SUPPLY-VEHICLE-DETAIL-cancelSupply']">取消货源</button> |  | ||||||
|             <button nz-button (click)="assignedCar(i)" *ngIf="i?.resourceStatus === '1' && i?.serviceType === '2'" acl |  | ||||||
|               [acl-ability]="['SUPPLY-VEHICLE-DETAIL-vehicleAnew']">重新指派</button> |  | ||||||
|             <button nz-button (click)="updateGoodsSource(i)" |  | ||||||
|               *ngIf="i?.resourceStatus === '1' && i.insurancePayment !== 'Y'" acl |  | ||||||
|               [acl-ability]="['SUPPLY-VEHICLE-DETAIL-changeSupply']">修改货源</button> |  | ||||||
|             <button nz-button nzType="primary" nzGhost (click)="nextOrder(i)" acl |  | ||||||
|               [acl-ability]="['SUPPLY-VEHICLE-DETAIL-vehiclePlaceOrder']">再下一单</button> |  | ||||||
|           </div> |  | ||||||
|         </div> |  | ||||||
|         <div class="mt-sm mb-sm" nz-row> |  | ||||||
|           <div> |  | ||||||
|             <b>总费用:<span class="text-red-light text-md">{{ i?.totalAmount | currency }}</span></b> |  | ||||||
|           </div> |  | ||||||
|         </div> |  | ||||||
|         <nz-divider></nz-divider> |  | ||||||
|         <div sv-container *ngIf="i"> |  | ||||||
|           <sv label="外部货源号">{{ i?.externalResourceCode }} </sv> |  | ||||||
|           <sv label="项目">{{ i?.enterpriseProjectName }}</sv> |  | ||||||
|           <sv label="录单员">{{ i?.createUserName }}/{{ i?.createUserPhone }}</sv> |  | ||||||
|           <sv label="调度员">{{ i?.dispatchName }}/{{ i?.dispatchPhone }} </sv> |  | ||||||
|           <sv label="服务类型">{{ i?.serviceTypeLabel }} </sv> |  | ||||||
|         </div> |  | ||||||
|       </ng-template> |  | ||||||
|     </page-header-wrapper> |     </page-header-wrapper> | ||||||
|     <nz-card [nzBorderless]="true" class="mb0"> |     <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|       <div class="mb-xs" nz-row> |       <div class="mb-sm common-order-header" nz-row> | ||||||
|  |         <div> | ||||||
|           <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> |           <button nz-button nzType="primary" nzSize="small" nzDanger>{{ i?.resourceStatusLabel }}</button> | ||||||
|         <h4 class="ml-md">货源编码 : {{ i?.resourceCode }}</h4> |           <b class="ml-md">货源编码 : {{ i?.resourceCode }}</b> | ||||||
|         </div> |         </div> | ||||||
|       <div nz-row> |         <div> | ||||||
|         <div nz-col nzSpan="14" class="text-grey-darker">网络货运人:{{ i?.enterpriseInfoName }}</div> |  | ||||||
|         <div nz-col nzSpan="10"> |  | ||||||
|           <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl |           <button nz-button (click)="cancleGoodsSource()" *ngIf="i?.resourceStatus === '1'" acl | ||||||
|             [acl-ability]="['SUPPLY-VEHICLE-DETAIL-cancelSupply']">取消货源</button> |             [acl-ability]="['SUPPLY-VEHICLE-DETAIL-cancelSupply']">取消货源</button> | ||||||
|           <button nz-button (click)="assignedCar(i)" *ngIf="i?.resourceStatus === '1' && i?.serviceType === '2'" acl |           <button nz-button (click)="assignedCar(i)" *ngIf="i?.resourceStatus === '1' && i?.serviceType === '2'" acl | ||||||
| @ -65,7 +31,8 @@ | |||||||
|         </div> |         </div> | ||||||
|       </div> --> |       </div> --> | ||||||
|       <nz-divider class="divider-margin"></nz-divider> |       <nz-divider class="divider-margin"></nz-divider> | ||||||
|       <div class="mb-lg" sv-container *ngIf="i"> |       <div class="mb-lg" sv-container> | ||||||
|  |         <sv label="网络货运人">{{ i?.enterpriseInfoName }} </sv> | ||||||
|         <sv label="外部货源号">{{ i?.externalResourceCode }} </sv> |         <sv label="外部货源号">{{ i?.externalResourceCode }} </sv> | ||||||
|         <sv label="项目">{{ i?.enterpriseProjectName }}</sv> |         <sv label="项目">{{ i?.enterpriseProjectName }}</sv> | ||||||
|         <sv label="录单员">{{ i?.createUserName }}/{{ i?.createUserPhone }}</sv> |         <sv label="录单员">{{ i?.createUserName }}/{{ i?.createUserPhone }}</sv> | ||||||
| @ -85,52 +52,24 @@ | |||||||
|           </nz-steps> |           </nz-steps> | ||||||
|         </div> |         </div> | ||||||
|       </div> |       </div> | ||||||
|     </nz-card> |  | ||||||
|  |  | ||||||
|     <nz-card [nzBorderless]="true" class="mb0"> |  | ||||||
|       <div class="font-weight-blod text-md detail-title"> |  | ||||||
|         <a class="sign mr-xs"></a> |  | ||||||
|         <span>基本信息</span> |  | ||||||
|       </div> |  | ||||||
|       <sv-container col="2"> |  | ||||||
|         <!-- <sv-title>货物信息</sv-title> --> |  | ||||||
|         <ng-container *ngFor="let item of i?.goodsInfoVOList"> |  | ||||||
|           <sv label="货物名称"> |  | ||||||
|             {{ item.goodsTypeName }} - {{ item.goodsName }} |  | ||||||
|           </sv> |  | ||||||
|           <sv label="货物数量"> {{ item.weight }}吨,{{ item.volume }}方,{{ item.number }}件 </sv> |  | ||||||
|         </ng-container> |  | ||||||
|       </sv-container> |  | ||||||
|       <sv-container class="mt-md"> |  | ||||||
|         <!-- <sv-title>承运信息</sv-title> --> |  | ||||||
|         <sv label="司机姓名"> |  | ||||||
|           {{ i?.carrierInformationVO?.driverName }} |  | ||||||
|         </sv> |  | ||||||
|         <sv label="手机号"> |  | ||||||
|           {{ i?.carrierInformationVO?.driverTelephone }} |  | ||||||
|         </sv> |  | ||||||
|         <sv label="车牌号"> |  | ||||||
|           {{ i?.carrierInformationVO?.driverLicensePlate }} |  | ||||||
|         </sv> |  | ||||||
|       </sv-container> |  | ||||||
|       <sv-container> |  | ||||||
|         <sv label="承运司机" *ngIf="i?.carrierInformationVO.driverTelephone !== i?.payeePhone"> |  | ||||||
|           {{i?.carrierInformationVO.driverName || '--'}} / {{i?.carrierInformationVO.driverTelephone || '--'}} / |  | ||||||
|           {{i?.carrierInformationVO.driverLicensePlate || '--'}} |  | ||||||
|         </sv> |  | ||||||
|         <sv label="车型车长载重"> |  | ||||||
|           {{i?.driverCarModelLabel || '--'}} / {{(i?.driverCarLength || '--') +'米'}} / {{(i?.driverCarWeight || |  | ||||||
|           '--')+'吨'}} |  | ||||||
|         </sv> |  | ||||||
|       </sv-container> |  | ||||||
|       <div class="mt-md"> |       <div class="mt-md"> | ||||||
|         <h4 class="text-md">装货卸货信息 |         <!-- <h4 class="text-md">装货卸货信息 | ||||||
|           <span class="ml-sm text-sm">( |           <span class="ml-sm text-sm">( | ||||||
|             <label>{{ i?.loadingCount }}装</label> |             <label>{{ i?.loadingCount }}装</label> | ||||||
|             <label>{{ i?.unloadingCount }}卸</label> |             <label>{{ i?.unloadingCount }}卸</label> | ||||||
|             ) |             ) | ||||||
|           </span> |           </span> | ||||||
|         </h4> |         </h4> --> | ||||||
|  |         <div class="font-weight-blod text-md detail-title"> | ||||||
|  |           <a class="sign mr-xs"></a> | ||||||
|  |           <span>装货卸货信息</span> | ||||||
|  |           <span class="ml-sm text-sm">( | ||||||
|  |             <label>{{ i?.loadingCount }}装</label> | ||||||
|  |             <label>{{ i?.unloadingCount }}卸</label> | ||||||
|  |             ) | ||||||
|  |           </span> | ||||||
|  |         </div> | ||||||
|         <div nz-row [nzGutter]="24"> |         <div nz-row [nzGutter]="24"> | ||||||
|           <div nz-col [nzSpan]="12"> |           <div nz-col [nzSpan]="12"> | ||||||
|             <div class="handling-info p-md"> |             <div class="handling-info p-md"> | ||||||
| @ -168,6 +107,42 @@ | |||||||
|       </div> |       </div> | ||||||
|     </nz-card> |     </nz-card> | ||||||
|  |  | ||||||
|  |     <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|  |       <div class="font-weight-blod text-md detail-title"> | ||||||
|  |         <a class="sign mr-xs"></a> | ||||||
|  |         <span>基本信息</span> | ||||||
|  |       </div> | ||||||
|  |       <sv-container col="2"> | ||||||
|  |         <!-- <sv-title>货物信息</sv-title> --> | ||||||
|  |         <ng-container *ngFor="let item of i?.goodsInfoVOList"> | ||||||
|  |           <sv label="货物名称"> | ||||||
|  |             {{ item.goodsTypeName }} - {{ item.goodsName }} | ||||||
|  |           </sv> | ||||||
|  |           <sv label="货物数量"> {{ item.weight }}吨,{{ item.volume }}方,{{ item.number }}件 </sv> | ||||||
|  |           <sv label="承运司机" *ngIf="i?.carrierInformationVO?.driverTelephone !== i?.payeePhone"> | ||||||
|  |             {{i?.carrierInformationVO?.driverName || '--'}} / {{i?.carrierInformationVO?.driverTelephone || '--'}} / | ||||||
|  |             {{i?.carrierInformationVO?.driverLicensePlate || '--'}} | ||||||
|  |           </sv> | ||||||
|  |           <sv label="车型车长载重"> | ||||||
|  |             {{i?.driverCarModelLabel || '--'}} / {{(i?.driverCarLength || '--') +'米'}} / {{(i?.driverCarWeight || | ||||||
|  |             '--')+'吨'}} | ||||||
|  |           </sv> | ||||||
|  |         </ng-container> | ||||||
|  |       </sv-container> | ||||||
|  |       <!-- <sv-container class="mt-md"> | ||||||
|  |         <sv-title>承运信息</sv-title> | ||||||
|  |         <sv label="司机姓名"> | ||||||
|  |           {{ i?.carrierInformationVO?.driverName }} | ||||||
|  |         </sv> | ||||||
|  |         <sv label="手机号"> | ||||||
|  |           {{ i?.carrierInformationVO?.driverTelephone }} | ||||||
|  |         </sv> | ||||||
|  |         <sv label="车牌号"> | ||||||
|  |           {{ i?.carrierInformationVO?.driverLicensePlate }} | ||||||
|  |         </sv> | ||||||
|  |       </sv-container> --> | ||||||
|  |     </nz-card> | ||||||
|  |  | ||||||
|     <nz-card [nzBorderless]="true" class="mb0"> |     <nz-card [nzBorderless]="true" class="mb0"> | ||||||
|       <div class="font-weight-blod text-md detail-title"> |       <div class="font-weight-blod text-md detail-title"> | ||||||
|         <a class="sign"></a> |         <a class="sign"></a> | ||||||
| @ -206,7 +181,7 @@ | |||||||
|       </st> |       </st> | ||||||
|       <div class="freight-info-box mt-md" nz-row> |       <div class="freight-info-box mt-md" nz-row> | ||||||
|         <div nz-col nzSpan="24"> |         <div nz-col nzSpan="24"> | ||||||
|           <h3> |           <h3 class="mb0"> | ||||||
|             <label>总计 :</label> |             <label>总计 :</label> | ||||||
|             <span class="text-error-dark text-xl"> |             <span class="text-error-dark text-xl"> | ||||||
|               {{ i?.totalAmount | currency }} |               {{ i?.totalAmount | currency }} | ||||||
| @ -251,7 +226,7 @@ | |||||||
|       </div> |       </div> | ||||||
|       <st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns" [page]="{}" |       <st #st [data]="service.$api_getOperationLogRecordsList" [columns]="logColumns" [page]="{}" | ||||||
|         [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" |         [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" | ||||||
|         [res]="{ reName: { list: 'data.records', total: 'data.total' } }"> |         [res]="{ reName: { list: 'data.records', total: 'data.total' } }" [size]="'small'"> | ||||||
|         <ng-template st-row="operator" let-item> |         <ng-template st-row="operator" let-item> | ||||||
|           <div> |           <div> | ||||||
|             {{ item?.operator }} {{ item?.telephone ? '/' + item?.telephone : '' }} |             {{ item?.operator }} {{ item?.telephone ? '/' + item?.telephone : '' }} | ||||||
|  | |||||||
| @ -48,7 +48,7 @@ | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   .handling-info { |   .handling-info { | ||||||
|     min-height: 176px; |     min-height: 100px; | ||||||
|     border: 1px solid #ccc; |     border: 1px solid #ccc; | ||||||
|  |  | ||||||
|     .loading-row { |     .loading-row { | ||||||
| @ -79,6 +79,7 @@ | |||||||
|  |  | ||||||
|     .time-info { |     .time-info { | ||||||
|       margin-left: 56px; |       margin-left: 56px; | ||||||
|  |       margin-bottom: 0; | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
| @ -51,6 +51,15 @@ const routes: Routes = [ | |||||||
|   { |   { | ||||||
|     path: 'vehicle-amend/:id', |     path: 'vehicle-amend/:id', | ||||||
|     component: SupplyManagementOnecarPublishComponent, |     component: SupplyManagementOnecarPublishComponent, | ||||||
|  |     data: { | ||||||
|  |       guard: { | ||||||
|  |         ability: ['SUPPLY-VEHICLE-AMEND-submitChange'] | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   }, | ||||||
|  |   { | ||||||
|  |     path: 'vehicle-next/:id', | ||||||
|  |     component: SupplyManagementOnecarPublishComponent, | ||||||
|     data: { |     data: { | ||||||
|       guard: { |       guard: { | ||||||
|         ability: [ |         ability: [ | ||||||
| @ -62,21 +71,26 @@ const routes: Routes = [ | |||||||
|     } |     } | ||||||
|   }, |   }, | ||||||
|   { |   { | ||||||
|     path: 'vehicle-next/:id', |     path: 'vehicle-release', | ||||||
|     component: SupplyManagementOnecarPublishComponent, |     component: SupplyManagementReleasePublishComponent, | ||||||
|     // data: { |     data: { | ||||||
|     //   guard: { |       guard: { ability: ['SUPPLY-VEHICLE-RELEASE-bulkDesignate', 'SUPPLY-VEHICLE-RELEASE-bulkDriverOrder'] } | ||||||
|     //     ability: [ |     } | ||||||
|     //       'SUPPLY-VEHICLE-PLACEORDER-QRCode', |   }, | ||||||
|     //       'SUPPLY-VEHICLE-PLACEORDER-vehicleDesignate', |   { | ||||||
|     //       'SUPPLY-VEHICLE-PLACEORDER-vehicleAnotherOrder' |     path: 'bulk-release', | ||||||
|     //     ] |     component: SupplyManagementBulkReleasePublishComponent, | ||||||
|     //   } |     data: { | ||||||
|     // } |       guard: { ability: ['SUPPLY-BULK-RELEASE-consignBulkAssign', 'SUPPLY-BULK-RELEASE-consignBulk'] } | ||||||
|  |     } | ||||||
|  |   }, | ||||||
|  |   { | ||||||
|  |     path: 'bulk-next/:id', | ||||||
|  |     component: SupplyManagementBulkPublishComponent, | ||||||
|  |     data: { | ||||||
|  |       guard: { ability: ['SUPPLY-BULK-PLACEORDER-vehicleAnotherOrder', 'SUPPLY-BULK-PLACEORDER-vehicleDesignate'] } | ||||||
|  |     } | ||||||
|   }, |   }, | ||||||
|   { path: 'vehicle-release', component: SupplyManagementReleasePublishComponent }, |  | ||||||
|   { path: 'bulk-release', component: SupplyManagementBulkReleasePublishComponent }, |  | ||||||
|   { path: 'bulk-next/:id', component: SupplyManagementBulkPublishComponent }, |  | ||||||
|   { path: 'bulk-amend/:id', component: SupplyManagementBulkPublishComponent } |   { path: 'bulk-amend/:id', component: SupplyManagementBulkPublishComponent } | ||||||
| ]; | ]; | ||||||
|  |  | ||||||
|  | |||||||
| @ -1,7 +1,11 @@ | |||||||
| <page-header-wrapper [title]="'车型车长配置'" [content]="content"> | <page-header-wrapper [title]="'车型车长配置'" [content]="content"> | ||||||
|     <ng-template #content> |     <ng-template #content> | ||||||
|         <nz-tabset class="tabs-wrap"> |         <nz-tabset class="tabs-wrap"> | ||||||
|             <nz-tab *ngFor="let tab of tabs" [nzTitle]="tab.name" (nzSelect)="changeTab(tab)"> </nz-tab> |             <ng-container *ngFor="let tab of tabs"> | ||||||
|  |                 <nz-tab [nzTitle]="tab.name" (nzSelect)="changeTab(tab)" *ngIf="tab.isShow"> | ||||||
|  |                 </nz-tab> | ||||||
|  |             </ng-container> | ||||||
|  |  | ||||||
|         </nz-tabset> |         </nz-tabset> | ||||||
|     </ng-template> |     </ng-template> | ||||||
| </page-header-wrapper> | </page-header-wrapper> | ||||||
| @ -22,10 +26,10 @@ | |||||||
| <nz-card> | <nz-card> | ||||||
|     <div class="d-flex justify-content-end mb-sm"> |     <div class="d-flex justify-content-end mb-sm"> | ||||||
|         <div> |         <div> | ||||||
|             <button nz-button nzType="primary" (click)="configAction()">新增</button> |             <button nz-button nzType="primary" (click)="configAction()" acl | ||||||
|  |                 [acl-ability]="['SYSTEM-CART-CONFIG-add']">新增</button> | ||||||
|         </div> |         </div> | ||||||
|     </div> |     </div> | ||||||
|     <st #st [data]="tabType === 3?service.$api_get_config_item_page:service.$api_get_dict_page" [columns]="columns" |     <st #st [data]="tabType === 3?service.$api_get_config_item_page:service.$api_get_dict_page" [columns]="columns" | ||||||
|         [req]="{process: beforeReq }" [res]="{  process: afterRes }" [loading]="loading" |         [req]="{process: beforeReq }" [res]="{  process: afterRes }" [loading]="loading" [scroll]="{ y: '370px' }"></st> | ||||||
|         [scroll]="{ y: '370px' }"></st> |  | ||||||
| </nz-card> | </nz-card> | ||||||
| @ -1,5 +1,6 @@ | |||||||
| import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core'; | import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnInit, ViewChild } from '@angular/core'; | ||||||
| import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st'; | import { STComponent, STColumn, STChange, STRequestOptions } from '@delon/abc/st'; | ||||||
|  | import { ACLService } from '@delon/acl'; | ||||||
| import { SFComponent, SFSchema } from '@delon/form'; | import { SFComponent, SFSchema } from '@delon/form'; | ||||||
| import { NzModalService } from 'ng-zorro-antd/modal'; | import { NzModalService } from 'ng-zorro-antd/modal'; | ||||||
| import { SystemService } from '../../services/system.service'; | import { SystemService } from '../../services/system.service'; | ||||||
| @ -20,17 +21,20 @@ export class CartConfigComponent implements OnInit { | |||||||
|     { |     { | ||||||
|       name: '车型配置', |       name: '车型配置', | ||||||
|       type: 1, |       type: 1, | ||||||
|       isActived: false |       isActived: false, | ||||||
|  |       isShow: true | ||||||
|     }, |     }, | ||||||
|     { |     { | ||||||
|       name: '车长配置', |       name: '车长配置', | ||||||
|       type: 2, |       type: 2, | ||||||
|       isActived: false |       isActived: false, | ||||||
|  |       isShow: true | ||||||
|     }, |     }, | ||||||
|     { |     { | ||||||
|       name: '禁限物品名单', |       name: '禁限物品名单', | ||||||
|       type: 3, |       type: 3, | ||||||
|       isActived: false |       isActived: false, | ||||||
|  |       isShow: true | ||||||
|     } |     } | ||||||
|   ]; |   ]; | ||||||
|   tabType = 1; |   tabType = 1; | ||||||
| @ -102,10 +106,12 @@ export class CartConfigComponent implements OnInit { | |||||||
|       buttons: [ |       buttons: [ | ||||||
|         { |         { | ||||||
|           text: '编辑', |           text: '编辑', | ||||||
|  |           acl: { ability: ['SYSTEM-CART-CONFIG-edit'] }, | ||||||
|           click: item => this.configAction(item) |           click: item => this.configAction(item) | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|           text: '删除', |           text: '删除', | ||||||
|  |           acl: { ability: ['SYSTEM-CART-CONFIG-delete'] }, | ||||||
|           click: item => this.deleteAction(item) |           click: item => this.deleteAction(item) | ||||||
|         } |         } | ||||||
|       ] |       ] | ||||||
| @ -113,7 +119,35 @@ export class CartConfigComponent implements OnInit { | |||||||
|   ]; |   ]; | ||||||
|  |  | ||||||
|   loading = true; |   loading = true; | ||||||
|   constructor(public service: SystemService, private nzModalService: NzModalService, private cdr: ChangeDetectorRef) {} |   constructor( | ||||||
|  |     public service: SystemService, | ||||||
|  |     private nzModalService: NzModalService, | ||||||
|  |     private cdr: ChangeDetectorRef, | ||||||
|  |     private acl: ACLService | ||||||
|  |   ) { | ||||||
|  |     const acls = acl.data.abilities || []; | ||||||
|  |     this.tabs = [ | ||||||
|  |       { | ||||||
|  |         name: '车型配置', | ||||||
|  |         type: 1, | ||||||
|  |         isActived: false, | ||||||
|  |         isShow: acl.data.full || !!acls.find(acl => acl === 'SYSTEM-CART-CONFIG-modeList') | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         name: '车长配置', | ||||||
|  |         type: 2, | ||||||
|  |         isActived: false, | ||||||
|  |         isShow: acl.data.full || !!acls.find(acl => acl === 'SYSTEM-CART-CONFIG-cartLength') | ||||||
|  |       }, | ||||||
|  |       { | ||||||
|  |         name: '禁限物品名单', | ||||||
|  |         type: 3, | ||||||
|  |         isActived: false, | ||||||
|  |         isShow: acl.data.full || !!acls.find(acl => acl === 'SYSTEM-CART-CONFIG-goodsList') | ||||||
|  |       } | ||||||
|  |     ]; | ||||||
|  |     this.tabType = this.tabs.find(tab => tab.isShow)?.type || 1; | ||||||
|  |   } | ||||||
|  |  | ||||||
|   ngOnInit(): void {} |   ngOnInit(): void {} | ||||||
|  |  | ||||||
|  | |||||||
| @ -14,10 +14,14 @@ | |||||||
|                     </div> |                     </div> | ||||||
|                     <nz-dropdown-menu #menu="nzDropdownMenu"> |                     <nz-dropdown-menu #menu="nzDropdownMenu"> | ||||||
|                         <ul nz-menu nzSelectable> |                         <ul nz-menu nzSelectable> | ||||||
|                             <li nz-menu-item (click)="typeAction(item)">编辑</li> |                             <li nz-menu-item (click)="typeAction(item)" acl | ||||||
|                             <li nz-menu-item (click)="sortType(item,3)" *ngIf="i!==0">上移</li> |                                 [acl-ability]="['SYSTEM-GOODS-NAME-CONFIG-edit']">编辑</li> | ||||||
|                             <li nz-menu-item (click)="sortType(item,4)" *ngIf="i!==typeList.length-1">下移</li> |                             <li nz-menu-item (click)="sortType(item,3)" acl | ||||||
|                             <li nz-menu-item nzDanger (click)="removeType(item)">删除</li> |                                 [acl-ability]="['SYSTEM-GOODS-NAME-CONFIG-sort']" *ngIf="i!==0">上移</li> | ||||||
|  |                             <li nz-menu-item (click)="sortType(item,4)" acl | ||||||
|  |                                 [acl-ability]="['SYSTEM-GOODS-NAME-CONFIG-sort']" *ngIf="i!==typeList.length-1">下移</li> | ||||||
|  |                             <li nz-menu-item nzDanger acl [acl-ability]="['SYSTEM-GOODS-NAME-CONFIG-delete']" | ||||||
|  |                                 (click)="removeType(item)">删除</li> | ||||||
|                         </ul> |                         </ul> | ||||||
|                     </nz-dropdown-menu> |                     </nz-dropdown-menu> | ||||||
|                 </nz-list-item> |                 </nz-list-item> | ||||||
| @ -25,7 +29,8 @@ | |||||||
|             <ng-template #listHeader> |             <ng-template #listHeader> | ||||||
|                 <div class="d-flex justify-content-between align-items-center"> |                 <div class="d-flex justify-content-between align-items-center"> | ||||||
|                     <label style="font-weight: 700;font-size: 16px;">货物类型</label> |                     <label style="font-weight: 700;font-size: 16px;">货物类型</label> | ||||||
|                     <button nz-button nzType="primary" (click)="typeAction()"><i nz-icon nzType="plus" |                     <button nz-button nzType="primary" (click)="typeAction()" acl | ||||||
|  |                         [acl-ability]="['SYSTEM-GOODS-NAME-CONFIG-add']"><i nz-icon nzType="plus" | ||||||
|                             nzTheme="outline"></i>新增</button> |                             nzTheme="outline"></i>新增</button> | ||||||
|                 </div> |                 </div> | ||||||
|             </ng-template> |             </ng-template> | ||||||
| @ -39,7 +44,8 @@ | |||||||
|                 </nz-input-group> |                 </nz-input-group> | ||||||
|                 <ng-template #suffixTemplateInfo><i nz-icon nzType="search" nzTheme="outline" (click)="st.load(1)"></i> |                 <ng-template #suffixTemplateInfo><i nz-icon nzType="search" nzTheme="outline" (click)="st.load(1)"></i> | ||||||
|                 </ng-template> |                 </ng-template> | ||||||
|                 <button nz-button nzType="primary" (click)="typeItemAction()"><i nz-icon nzType="plus" |                 <button nz-button nzType="primary" (click)="typeItemAction()" acl | ||||||
|  |                     [acl-ability]="['SYSTEM-GOODS-NAME-CONFIG-add']"><i nz-icon nzType="plus" | ||||||
|                         nzTheme="outline"></i>新增</button> |                         nzTheme="outline"></i>新增</button> | ||||||
|             </div> |             </div> | ||||||
|  |  | ||||||
|  | |||||||
| @ -28,18 +28,22 @@ export class GoodsNameConfigComponent implements OnInit { | |||||||
|       buttons: [ |       buttons: [ | ||||||
|         { |         { | ||||||
|           text: '编辑', |           text: '编辑', | ||||||
|  |           acl: { ability: ['SYSTEM-GOODS-NAME-CONFIG-edit'] }, | ||||||
|           click: item => this.typeItemAction(item) |           click: item => this.typeItemAction(item) | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|           text: '上移', |           text: '上移', | ||||||
|  |           acl: { ability: ['SYSTEM-GOODS-NAME-CONFIG-sort'] }, | ||||||
|           click: item => this.sortTypeItem(item, 3) |           click: item => this.sortTypeItem(item, 3) | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|           text: '下移', |           text: '下移', | ||||||
|  |           acl: { ability: ['SYSTEM-GOODS-NAME-CONFIG-sort'] }, | ||||||
|           click: item => this.sortTypeItem(item, 4) |           click: item => this.sortTypeItem(item, 4) | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|           text: '删除', |           text: '删除', | ||||||
|  |           acl: { ability: ['SYSTEM-GOODS-NAME-CONFIG-delete'] }, | ||||||
|           click: item => this.removeTypeItem(item) |           click: item => this.removeTypeItem(item) | ||||||
|         } |         } | ||||||
|       ] |       ] | ||||||
|  | |||||||
| @ -68,20 +68,20 @@ export class StaffManagementComponent implements OnInit { | |||||||
|         { |         { | ||||||
|           text: '冻结', |           text: '冻结', | ||||||
|           iif: item => |           iif: item => | ||||||
|             item.stateLocked === 0 && item.roleCode.split(',').indexOf('Administrator') === -1 && item.telephone !== this.user.phone, |             !item.stateLocked && item.roleCode.split(',').indexOf('Administrator') === -1 && item.telephone !== this.user.phone, | ||||||
|           click: item => this.action(item, 1), |           click: item => this.action(item, 1), | ||||||
|           acl: { ability: ['SYSTEM-STAFF-lock'] } |           acl: { ability: ['SYSTEM-STAFF-lock'] } | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|           text: '超管转授', |           text: '超管转授', | ||||||
|           iif: item => item.stateLocked === 0 && item.roleCode.split(',').indexOf('Administrator') === -1, |           iif: item => !item.stateLocked && item.roleCode.split(',').indexOf('Administrator') === -1, | ||||||
|           click: item => this.transpowerAction(item), |           click: item => this.transpowerAction(item), | ||||||
|           acl: { ability: ['SYSTEM-STAFF-shiftAdmin'] } |           acl: { ability: ['SYSTEM-STAFF-shiftAdmin'] } | ||||||
|         }, |         }, | ||||||
|         { |         { | ||||||
|           text: '删除', |           text: '删除', | ||||||
|           iif: item => |           iif: item => | ||||||
|             item.stateLocked === 0 && item.roleCode.split(',').indexOf('Administrator') === -1 && item.telephone !== this.user.phone, |             !item.stateLocked && item.roleCode.split(',').indexOf('Administrator') === -1 && item.telephone !== this.user.phone, | ||||||
|           click: item => this.action(item, 3), |           click: item => this.action(item, 3), | ||||||
|           acl: { ability: ['SYSTEM-STAFF-delete'] } |           acl: { ability: ['SYSTEM-STAFF-delete'] } | ||||||
|         } |         } | ||||||
|  | |||||||
| @ -9,7 +9,7 @@ | |||||||
|     <div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand"> |     <div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand"> | ||||||
|       <button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="isLoading && st.loading" (click)="search()" >查询</button> |       <button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="isLoading && st.loading" (click)="search()" >查询</button> | ||||||
|       <button nz-button (click)="resetSF()">重置</button> |       <button nz-button (click)="resetSF()">重置</button> | ||||||
|       <button nz-button (click)="export()">导出</button> |       <button nz-button (click)="export()" acl [acl-ability]="['TAX_INVOICE_REPORT-export']">导出</button> | ||||||
|       <button nz-button nzType="link" (click)="expandToggle()"> |       <button nz-button nzType="link" (click)="expandToggle()"> | ||||||
|         {{ !_$expand ? '展开' : '收起' }} |         {{ !_$expand ? '展开' : '收起' }} | ||||||
|         <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> |         <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> | ||||||
| @ -32,7 +32,8 @@ | |||||||
|       <span *ngIf="item?.uploadSts == '1'">待上传</span> |       <span *ngIf="item?.uploadSts == '1'">待上传</span> | ||||||
|       <span *ngIf="item?.uploadSts == '3'">已上传</span> |       <span *ngIf="item?.uploadSts == '3'">已上传</span> | ||||||
|       <span *ngIf="item?.uploadSts == '2'">上传中</span> |       <span *ngIf="item?.uploadSts == '2'">上传中</span> | ||||||
|       <span  *ngIf="item?.uploadSts == '4'" style="color: red;" (click)="unnormal(item)">上传异常</span> |       <span *ngIf="item?.uploadSts == '4'" style="color: red;">上传异常</span> | ||||||
|  |       <!-- <span  *ngIf="item?.uploadSts == '4'" style="color: red;" (click)="unnormal(item)">上传异常</span> --> | ||||||
|     </ng-template> |     </ng-template> | ||||||
|     <ng-template st-row="invoiceType" let-item let-index="index"> |     <ng-template st-row="invoiceType" let-item let-index="index"> | ||||||
|       <span>增值税专用发票</span> |       <span>增值税专用发票</span> | ||||||
| @ -53,6 +54,6 @@ | |||||||
|       <strong class="text-red">{{ selectedRows.length }}</strong> 条数据 |       <strong class="text-red">{{ selectedRows.length }}</strong> 条数据 | ||||||
|     </div> |     </div> | ||||||
|     <button *ngIf="selectedIndex === '1' || selectedIndex === '4'" nz-button nzType="primary" (click)="upload()">上传</button> |     <button *ngIf="selectedIndex === '1' || selectedIndex === '4'" nz-button nzType="primary" (click)="upload()">上传</button> | ||||||
|     <button *ngIf="selectedIndex === '3'" nz-button nzType="primary" (click)="recall()">撤回</button> |     <button *ngIf="selectedIndex === '3'" nz-button nzType="primary" (click)="recall()" acl [acl-ability]="['TAX_INVOICE_REPORT-recall']">撤回</button> | ||||||
|   </div> |   </div> | ||||||
| </ng-template> | </ng-template> | ||||||
|  | |||||||
| @ -281,26 +281,7 @@ export class TaxManagementInvoiceReportingComponent implements OnInit { | |||||||
|     }); |     }); | ||||||
|  |  | ||||||
|   } |   } | ||||||
|   /** |  | ||||||
|    *撤销 |  | ||||||
|    * @param record 记录实例 |  | ||||||
|    */ |  | ||||||
|   resetData() { |  | ||||||
|     if (this.selectedRows.length === 0) { |  | ||||||
|       this.openWainingModal('请选择需要更新的数据!'); |  | ||||||
|       return; |  | ||||||
|     } |  | ||||||
|     let params: any[] = []; |  | ||||||
|     this.selectedRows.forEach(item => { |  | ||||||
|       params.push(item.billId); |  | ||||||
|     }); |  | ||||||
|     this.service.request(this.service.$api_get_renewalOrderById, params).subscribe((res: any) => { |  | ||||||
|       if (res) { |  | ||||||
|         this.service.msgSrv.success('更新成功'); |  | ||||||
|         this.st.load(1); |  | ||||||
|       } |  | ||||||
|     }) |  | ||||||
|   } |  | ||||||
|   /** |   /** | ||||||
|    *撤销 |    *撤销 | ||||||
|    * @param record 记录实例 |    * @param record 记录实例 | ||||||
| @ -333,28 +314,13 @@ export class TaxManagementInvoiceReportingComponent implements OnInit { | |||||||
|   } |   } | ||||||
|  |  | ||||||
|   selectChange(item: any) { |   selectChange(item: any) { | ||||||
|     console.log(item); |  | ||||||
|  |  | ||||||
|     this.selectedIndex = item?.value || ''; |     this.selectedIndex = item?.value || ''; | ||||||
|     console.log(this.selectedIndex); |  | ||||||
|  |  | ||||||
|     setTimeout(() => { |     setTimeout(() => { | ||||||
|       this.st.load(); |       this.st.load(); | ||||||
|     }) |     }) | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   /** |  | ||||||
|    * 查看当行数据 |  | ||||||
|    */ |  | ||||||
|   view(record: STData) { |  | ||||||
|     // this.router.navigate(['../view', record.uuid], { relativeTo: this.ar }); |  | ||||||
|     this.router.navigate(['../detail'], { |  | ||||||
|       queryParams: { |  | ||||||
|         id: record.id, |  | ||||||
|       }, |  | ||||||
|       relativeTo: this.ar |  | ||||||
|     }); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
|    * 上传 |    * 上传 | ||||||
| @ -368,6 +334,7 @@ export class TaxManagementInvoiceReportingComponent implements OnInit { | |||||||
|     this.selectedRows.forEach(item => { |     this.selectedRows.forEach(item => { | ||||||
|       params.push(item.id); |       params.push(item.id); | ||||||
|     }); |     }); | ||||||
|  |     return; //TODO 接口未提供 | ||||||
|     this.service.request(this.service.$api_get_uploadingTaxOrder, params).subscribe((res: any) => { |     this.service.request(this.service.$api_get_uploadingTaxOrder, params).subscribe((res: any) => { | ||||||
|       if (res) { |       if (res) { | ||||||
|         this.service.msgSrv.success('上传成功'); |         this.service.msgSrv.success('上传成功'); | ||||||
|  | |||||||
| @ -11,9 +11,9 @@ | |||||||
|         </div> |         </div> | ||||||
|         <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" |         <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" | ||||||
|             class="text-right"> |             class="text-right"> | ||||||
|             <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)" acl [acl-ability]="['TICKET-BILLING-ORDER-search']">查询</button> | ||||||
|             <button nz-button (click)="resetSF()">重置</button> |             <button nz-button (click)="resetSF()">重置</button> | ||||||
|             <button nz-button (click)="export()"> 导出</button> |             <button nz-button (click)="export()" acl [acl-ability]="['TICKET-BILLING-ORDER-exprort']"> 导出</button> | ||||||
|             <button nz-button nzType="link" (click)="expandToggle()"> |             <button nz-button nzType="link" (click)="expandToggle()"> | ||||||
|                 {{ !_$expand ? '展开' : '收起' }} |                 {{ !_$expand ? '展开' : '收起' }} | ||||||
|                 <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> |                 <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> | ||||||
|  | |||||||
| @ -112,19 +112,23 @@ | |||||||
|                                 <!-- 图片上传 --> |                                 <!-- 图片上传 --> | ||||||
|                                 <ng-container *ngSwitchCase="12"> |                                 <ng-container *ngSwitchCase="12"> | ||||||
|                                     <div> |                                     <div> | ||||||
|                                         <nz-upload class="avatar-uploader" [nzAction]="service.$api_upload_url" |                                         <nz-upload #filst class="avatar-uploader" [nzAction]="service.$api_upload_url" | ||||||
|                                             [nzName]="'multipartFile'" nzName="avatar" nzListType="picture-card" |                                             [nzName]="'multipartFile'" nzName="avatar" nzListType="picture-card" | ||||||
|                                             [nzShowUploadList]="false" (nzChange)="uploadChange($event,item)"> |                                             [nzShowUploadList]="{showPreviewIcon:true,showRemoveIcon:true}" | ||||||
|                                             <ng-container *ngIf="!item.itemValue"> |                                             [nzFileList]="item.itemValue?[{uid:item.id,name:'',url:item.itemValue}]:[]" | ||||||
|  |                                             (nzChange)="uploadChange($event,item)" [nzLimit]="1" | ||||||
|  |                                             [nzShowButton]="filst?.nzFileList?.length===0 " [nzPreview]="nzPreview" | ||||||
|  |                                             [nzRemove]="nzRemove"> | ||||||
|  |                                             <div> | ||||||
|                                                 <i class="upload-icon" nz-icon |                                                 <i class="upload-icon" nz-icon | ||||||
|                                                     [nzType]="service.http.loading ? 'loading' : 'plus'"></i> |                                                     [nzType]="service.http.loading ? 'loading' : 'plus'"></i> | ||||||
|                                                 <div class="ant-upload-text">上传</div> |                                                 <div class="ant-upload-text">上传</div> | ||||||
|                                             </ng-container> |                                             </div> | ||||||
|                                             <div style="width: 102px;height: 102px;display: flex;align-items: center;justify-content: center;" |                                             <!-- <div style="width: 102px;height: 102px;display: flex;align-items: center;justify-content: center;" | ||||||
|                                                 *ngIf="item.itemValue" (click)="$event.cancelBubble = true"> |                                                 *ngIf="item.itemValue" (click)="$event.cancelBubble = true"> | ||||||
|                                                 <img nz-image [nzSrc]="item.itemValue" |                                                 <img nz-image [nzSrc]="item.itemValue" | ||||||
|                                                     style="max-width: 102px;max-height: 102px;" /> |                                                     style="max-width: 102px;max-height: 102px;" /> | ||||||
|                                             </div> |                                             </div> --> | ||||||
|                                         </nz-upload> |                                         </nz-upload> | ||||||
|                                         <p>支持 |                                         <p>支持 | ||||||
|                                             <ng-container *ngFor="let item of item.remark?.format"> |                                             <ng-container *ngFor="let item of item.remark?.format"> | ||||||
|  | |||||||
| @ -98,6 +98,17 @@ export class DynamicSettingH5Component implements OnInit { | |||||||
|     } |     } | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   nzPreview = (file: NzUploadFile) => { | ||||||
|  |     this.showImg(file.url); | ||||||
|  |   }; | ||||||
|  |   nzRemove = (file: NzUploadFile) => { | ||||||
|  |     const config = this.configList.find((c: any) => c.id === file.uid); | ||||||
|  |     if (config) { | ||||||
|  |       config.itemValue = ''; | ||||||
|  |     } | ||||||
|  |     return true; | ||||||
|  |   }; | ||||||
|  |  | ||||||
|   showImg(url: any) { |   showImg(url: any) { | ||||||
|     this.nzImageService.preview([{ src: url }]); |     this.nzImageService.preview([{ src: url }]); | ||||||
|   } |   } | ||||||
|  | |||||||
| @ -24,3 +24,7 @@ | |||||||
| .ant-btn { | .ant-btn { | ||||||
|   border-radius: 4px; |   border-radius: 4px; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | .ant-card-body { | ||||||
|  |   padding: 16px; | ||||||
|  | } | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user