Commit 8fec8ce2 by sunchao

银盾学院权限控制

parent 2b0e433b
......@@ -2,10 +2,12 @@
<h5>{{item.title}}</h5>
<ul>
<li *ngFor="let subItem of item.subItems" (click)="featureSelect(subItem)">
<div>
<img [src]="'assets/images/indexIcons/' + subItem.icon + '.png'" alt="">
</div>
<p>{{subItem.name}}</p>
<ng-container *ngIf="subItem.isShow">
<div>
<img [src]="'assets/images/indexIcons/' + subItem.icon + '.png'" alt="">
</div>
<p>{{subItem.name}}</p>
</ng-container>
</li>
</ul>
</div>
......
import { Location } from '@angular/common';
import { Component, OnDestroy, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { MyService } from '../my.service';
@Component({
selector: 'ydlife-more-features',
......@@ -9,83 +10,8 @@ import { Router } from '@angular/router';
})
export class MoreFeaturesComponent implements OnInit,OnDestroy {
lifeCustomerInfo: any = JSON.parse(localStorage.getItem('lifeCustomerInfo')) ? JSON.parse(localStorage.getItem('lifeCustomerInfo')) : null;
public feartureLists = [
{key:'00',title:'营销工具',subItems:[
{no:1,name:'线上投保',icon:'onlineInsurance',link:'',path:`https://${window.location.host}/index?source=dyd`,isOpen:true},
{no:2,name:'产品库',icon:'product-market',link:'/product',path:'',isOpen:true},
{no:3,name:'投核保知识库',icon:'insuranceKnowledgeBase',link:'/underwriting_knowledge',path:'',isOpen:true},
{no:4,name:'计划书',icon:'proposals',link:'',path:'',isOpen:false},
{no:5,name:'产品海报',icon:'productPoster',link:'/material',path:'',isOpen:true},
{no:6,name:'文章分享',icon:'articleShare',link:'/article/null',path:'',isOpen:true},
{no:7,name:'AI保险医生',icon:'aiDoctor',link:'',path:`https://${window.location.host}/questionnaire/#/index?campaign=AIRobot&task=AItask1&customerId=${this.lifeCustomerInfo.customerId}`,isOpen:true},
{no:36,name:'遗嘱服务',icon:'will_grey',link:'',path:'',isOpen:false},
]},
{key:'01',title:'保单服务',subItems:[
{no:8,name:'我的保单',icon:'policyLists',link:'/salesDetail',path:'',isOpen:true},
{no:9,name:'续期管理',icon:'renewalManagement',link:'/renewal_reminder',path:'',isOpen:true},
]}
,{
key:'02',title:'客户管理',subItems:[
{no:10,name:'成交客户',icon:'customers',link:'/customer',path:'',isOpen:true},
{no:11,name:'潜在客户',icon:'potentialCustomers',link:'/business',path:'',isOpen:true},
]
}
,{
key:'03',title:'我的增员',subItems:[
{no:12,name:'团队增员',icon:'teamIncreaseStaff',link:'/recruiting',path:'',isOpen:true},
{no:13,name:'报聘审批',icon:'employmentApproval',link:'/approval_list',path:'',isOpen:true},
]
}
,{
key:'04',title:'我的展业',subItems:[
{no:14,name:'目标设置',icon:'targetSetting',link:'/target',path:'',isOpen:true},
{no:15,name:'我的日程',icon:'schedule',link:'/todo',path:'',isOpen:true},
{no:16,name:'活动量统计',icon:'activityStatistics',link:'/scoreDeatil',path:'',isOpen:true},
{no:17,name:'我的工号',icon:'jobNumber',link:'',path:'',isOpen:false},
{no:18,name:'联合销售',icon:'jointSale',link:'/joint_sales',path:'',isOpen:true},
{no:19,name:'客户告知书',icon:'customerNotification',link:'/business',path:'',isOpen:true},
{no:20,name:'我的业绩',icon:'achievement',link:'',path:'',isOpen:false},
{no:21,name:'我的薪资',icon:'salary',link:'/salary',path:'',isOpen:true},
{no:22,name:'我的竞赛',icon:'competition',link:'',path:'',isOpen:false},
]
}
,{
key:'05',title:'银盾学院',subItems:[
{no:23,name:'保险ABC',icon:'insuranceABC',link:'',path:`https://${window.location.host}/issue`,isOpen:true},
{no:24,name:'岗前训',icon:'preJobTraining',link:'/preJobTraining',path:'',isOpen:true},
{no:25,name:'新人训',icon:'newTraining',link:'/newTraining',path:'',isOpen:true},
{no:27,name:'CFFP初级训',icon:'cffpTraining',link:'/cffpElementaryTraining',path:'',isOpen:true},
{no:26,name:'提升训',icon:'promotionTraining',link:'/promotionTraining',path:'',isOpen:true},
{no:27,name:'CFFP衔接训',icon:'cffpTraining',link:'/cffpBridgingTraining',path:'',isOpen:true},
{no:27,name:'CFFP高阶训',icon:'cffpTraining',link:'/cffpAdvancedTraining',path:'',isOpen:true},
{no:28,name:'产品培训',icon:'productTraining',link:'/productTraining',path:'',isOpen:true},
{no:29,name:'我的培训',icon:'training',link:'/myTraining',path:'',isOpen:true},
]
}
,{
key:'06',title:'我的团队',subItems:[
{no:30,name:'我的团队',icon:'team',link:'/teamPanel',path:'',isOpen:true},
{no:31,name:'团队业绩',icon:'teamPerformance',link:'/teamRank',path:'',isOpen:true},
{no:32,name:'团队晋升考核',icon:'teamPromotionAssessment',link:'',path:'',isOpen:false},
{no:33,name:'团队PEP',icon:'temPEP',link:'/teamPanel/teamSalesScore',path:'',isOpen:true},
{no:34,name:'团队学习',icon:'teamLearning',link:'',path:'',isOpen:false},
{no:35,name:'团队竞赛',icon:'teamCompetition',link:'',path:'',isOpen:false},
]
}
]
canSeeSchool:Boolean=false;
public feartureLists:Array<any> = [];
public state = {
modal1:false
......@@ -108,7 +34,7 @@ export class MoreFeaturesComponent implements OnInit,OnDestroy {
goBack(){
this.location.back()
}
constructor(private router:Router,private location:Location) { }
constructor(private router:Router,private location:Location,private myService: MyService) { }
ngOnInit() {
if(sessionStorage.getItem('mineScrollTop')){
......@@ -116,9 +42,85 @@ export class MoreFeaturesComponent implements OnInit,OnDestroy {
left: 100,
behavior: 'smooth'})
}
this.queryCanSee()
}
ngOnDestroy(): void {
sessionStorage.setItem('mineScrollTop',document.body.scrollTop + '')
}
queryCanSee(){
this.myService.queryCanSee({practitionerId: this.lifeCustomerInfo?this.lifeCustomerInfo['practitionerId']:null,}).subscribe((res)=>{
if(res['success']){
this.canSeeSchool = res['data']['canSeeYdCollege']==1?true:false;
}
this.getMenu()
})
}
getMenu(){
this.feartureLists = [
{key:'00',title:'营销工具',subItems:[
{no:1,name:'线上投保',icon:'onlineInsurance',link:'',path:`https://${window.location.host}/index?source=dyd`,isOpen:true,isShow:true},
{no:2,name:'产品库',icon:'product-market',link:'/product',path:'',isOpen:true,isShow:true},
{no:3,name:'投核保知识库',icon:'insuranceKnowledgeBase',link:'/underwriting_knowledge',path:'',isOpen:true,isShow:true},
{no:4,name:'计划书',icon:'proposals',link:'',path:'',isOpen:false},
{no:5,name:'产品海报',icon:'productPoster',link:'/material',path:'',isOpen:true,isShow:true},
{no:6,name:'文章分享',icon:'articleShare',link:'/article/null',path:'',isOpen:true,isShow:true},
{no:7,name:'AI保险医生',icon:'aiDoctor',link:'',path:`https://${window.location.host}/questionnaire/#/index?campaign=AIRobot&task=AItask1&customerId=${this.lifeCustomerInfo.customerId}`,isOpen:true,isShow:true},
{no:36,name:'遗嘱服务',icon:'will_grey',link:'',path:'',isOpen:false},
]},
{key:'01',title:'保单服务',subItems:[
{no:8,name:'我的保单',icon:'policyLists',link:'/salesDetail',path:'',isOpen:true,isShow:true},
{no:9,name:'续期管理',icon:'renewalManagement',link:'/renewal_reminder',path:'',isOpen:true,isShow:true},
]}
,{
key:'02',title:'客户管理',subItems:[
{no:10,name:'成交客户',icon:'customers',link:'/customer',path:'',isOpen:true,isShow:true},
{no:11,name:'潜在客户',icon:'potentialCustomers',link:'/business',path:'',isOpen:true,isShow:true},
]
}
,{
key:'03',title:'我的增员',subItems:[
{no:12,name:'团队增员',icon:'teamIncreaseStaff',link:'/recruiting',path:'',isOpen:true,isShow:true},
{no:13,name:'报聘审批',icon:'employmentApproval',link:'/approval_list',path:'',isOpen:true,isShow:true},
]
}
,{
key:'04',title:'我的展业',subItems:[
{no:14,name:'目标设置',icon:'targetSetting',link:'/target',path:'',isOpen:true,isShow:true},
{no:15,name:'我的日程',icon:'schedule',link:'/todo',path:'',isOpen:true,isShow:true},
{no:16,name:'活动量统计',icon:'activityStatistics',link:'/scoreDeatil',path:'',isOpen:true,isShow:true},
{no:17,name:'我的工号',icon:'jobNumber',link:'',path:'',isOpen:false,isShow:true},
{no:18,name:'联合销售',icon:'jointSale',link:'/joint_sales',path:'',isOpen:true,isShow:true},
{no:19,name:'客户告知书',icon:'customerNotification',link:'/business',path:'',isOpen:true,isShow:true},
{no:20,name:'我的业绩',icon:'achievement',link:'',path:'',isOpen:false,isShow:true},
{no:21,name:'我的薪资',icon:'salary',link:'/salary',path:'',isOpen:true,isShow:true},
{no:22,name:'我的竞赛',icon:'competition',link:'',path:'',isOpen:false,isShow:true},
]
}
,{
key:'05',title:'银盾学院',subItems:[
{no:23,name:'保险ABC',icon:'insuranceABC',link:'',path:`https://${window.location.host}/issue`,isOpen:true,isShow:true},
{no:24,name:'岗前训',icon:'preJobTraining',link:'/preJobTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:25,name:'新人训',icon:'newTraining',link:'/newTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:27,name:'CFFP初级训',icon:'cffpTraining',link:'/cffpElementaryTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:26,name:'提升训',icon:'promotionTraining',link:'/promotionTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:27,name:'CFFP衔接训',icon:'cffpTraining',link:'/cffpBridgingTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:27,name:'CFFP高阶训',icon:'cffpTraining',link:'/cffpAdvancedTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:28,name:'产品培训',icon:'productTraining',link:'/productTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:29,name:'我的培训',icon:'training',link:'/myTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
]
}
,{
key:'06',title:'我的团队',subItems:[
{no:30,name:'我的团队',icon:'team',link:'/teamPanel',path:'',isOpen:true,isShow:true},
{no:31,name:'团队业绩',icon:'teamPerformance',link:'/teamRank',path:'',isOpen:true,isShow:true},
{no:32,name:'团队晋升考核',icon:'teamPromotionAssessment',link:'',path:'',isOpen:false,isShow:true},
{no:33,name:'团队PEP',icon:'temPEP',link:'/teamPanel/teamSalesScore',path:'',isOpen:true,isShow:true},
{no:34,name:'团队学习',icon:'teamLearning',link:'',path:'',isOpen:false,isShow:true},
{no:35,name:'团队竞赛',icon:'teamCompetition',link:'',path:'',isOpen:false,isShow:true},
]
}
]
}
}
......@@ -948,5 +948,10 @@ export class MyService {
const url = this.API + "/commission/queryCommissionInfoByYdLife";
return this.http.post(url,JSON.stringify(params))
}
//是否可见银盾学院
queryCanSee(params){
const url = this.ydapi + "/practitioner/queryCanSee";
return this.http.post(url,JSON.stringify(params))
}
}
<ul>
<li *ngFor="let subItem of courseLists" (click)="featureSelect(subItem)">
<div>
<img [src]="'assets/images/indexIcons/' + subItem.icon + '.png'" alt="">
</div>
<p>{{subItem.name}}</p>
</li>
<ng-container *ngFor="let subItem of courseLists">
<li (click)="featureSelect(subItem)" *ngIf="subItem.isShow">
<div>
<img [src]="'assets/images/indexIcons/' + subItem.icon + '.png'" alt="">
</div>
<p>{{subItem.name}}</p>
</li>
</ng-container>
</ul>
<Modal [(ngModel)]="this.state.modal1" [transparent]="true" [maskClosable]="true" (onClose)="onClose('modal1')">
<div [ngStyle]="{ height: 100, overflow: 'scroll',color:'#000' }">
......
import { Component, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { MyService } from '../my.service';
@Component({
selector: 'ydlife-yd-college',
......@@ -7,16 +8,18 @@ import { Router } from '@angular/router';
styleUrls: ['./yd-college.component.scss']
})
export class YdCollegeComponent implements OnInit {
canSeeSchool:Boolean=false;
lifeCustomerInfo: any = JSON.parse(localStorage.getItem('lifeCustomerInfo')) ? JSON.parse(localStorage.getItem('lifeCustomerInfo')) : null;
public courseLists = [
{no:23,name:'保险ABC',icon:'insuranceABC',link:'',path:`https://${window.location.host}/issue`,isOpen:true},
{no:24,name:'岗前训',icon:'preJobTraining',link:'/preJobTraining',path:'',isOpen:true},
{no:25,name:'新人训',icon:'newTraining',link:'/newTraining',path:'',isOpen:true},
{no:26,name:'CFFP初级训',icon:'cffpElementaryTraining',link:'/cffpElementaryTraining',path:'',isOpen:true},
{no:27,name:'提升训',icon:'promotionTraining',link:'/promotionTraining',path:'',isOpen:true},
{no:28,name:'CFFP衔接训',icon:'cffpBridgingTraining',link:'/cffpBridgingTraining',path:'',isOpen:true},
{no:29,name:'CFFP高阶训',icon:'cffpAdvancedTraining',link:'/cffpAdvancedTraining',path:'',isOpen:true},
{no:30,name:'产品培训',icon:'productTraining',link:'/productTraining',path:'',isOpen:true},
{no:31,name:'我的培训',icon:'training',link:'/myTraining',path:'',isOpen:true}
{no:23,name:'保险ABC',icon:'insuranceABC',link:'',path:`https://${window.location.host}/issue`,isOpen:true,isShow:true},
{no:24,name:'岗前训',icon:'preJobTraining',link:'/preJobTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:25,name:'新人训',icon:'newTraining',link:'/newTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:26,name:'CFFP初级训',icon:'cffpElementaryTraining',link:'/cffpElementaryTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:27,name:'提升训',icon:'promotionTraining',link:'/promotionTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:28,name:'CFFP衔接训',icon:'cffpBridgingTraining',link:'/cffpBridgingTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:29,name:'CFFP高阶训',icon:'cffpAdvancedTraining',link:'/cffpAdvancedTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:30,name:'产品培训',icon:'productTraining',link:'/productTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:31,name:'我的培训',icon:'training',link:'/myTraining',path:'',isOpen:true,isShow:this.canSeeSchool}
]
public state = {
modal1:false
......@@ -35,9 +38,33 @@ export class YdCollegeComponent implements OnInit {
this.router.navigate([`./${item.link}`]);
}
}
constructor(private router:Router) { }
constructor(private router:Router,private myService: MyService) { }
ngOnInit() {
this.queryCanSee()
}
getMenu(){
this.courseLists = [
{no:23,name:'保险ABC',icon:'insuranceABC',link:'',path:`https://${window.location.host}/issue`,isOpen:true,isShow:true},
{no:24,name:'岗前训',icon:'preJobTraining',link:'/preJobTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:25,name:'新人训',icon:'newTraining',link:'/newTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:26,name:'CFFP初级训',icon:'cffpElementaryTraining',link:'/cffpElementaryTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:27,name:'提升训',icon:'promotionTraining',link:'/promotionTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:28,name:'CFFP衔接训',icon:'cffpBridgingTraining',link:'/cffpBridgingTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:29,name:'CFFP高阶训',icon:'cffpAdvancedTraining',link:'/cffpAdvancedTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:30,name:'产品培训',icon:'productTraining',link:'/productTraining',path:'',isOpen:true,isShow:this.canSeeSchool},
{no:31,name:'我的培训',icon:'training',link:'/myTraining',path:'',isOpen:true,isShow:this.canSeeSchool}
]
}
queryCanSee(){
this.myService.queryCanSee({practitionerId: this.lifeCustomerInfo?this.lifeCustomerInfo['practitionerId']:null,}).subscribe((res)=>{
if(res['success']){
this.canSeeSchool = res['data']['canSeeYdCollege']==1?true:false;
}
this.getMenu()
})
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment