Commit e8baff94 by sunchao

签名画布大小&返回首页

parent 80696286
<!--The content below is only a placeholder and can be replaced.--> <!--The content below is only a placeholder and can be replaced.-->
<router-outlet></router-outlet> <router-outlet></router-outlet>
<ydlife-guide-page *ngIf="shareGuidePageEnable"></ydlife-guide-page> <ydlife-guide-page *ngIf="shareGuidePageEnable"></ydlife-guide-page>
<ydlife-alert *ngIf="isNeedAlert" [dialogInfo]="dialogInfo" (popInfo)="getPopInfo()"></ydlife-alert> <ydlife-alert *ngIf="isNeedAlert" [dialogInfo]="dialogInfo" (popInfo)="getPopInfo()"></ydlife-alert>
\ No newline at end of file <div class="returnIndexBox" *ngIf="isShowIndexBtn" appDrag>
<div><i class="iconfont icon-shouye"></i></div>
<div>首页</div>
</div>
\ No newline at end of file
...@@ -2,6 +2,8 @@ import { Component, OnDestroy, OnInit } from '@angular/core'; ...@@ -2,6 +2,8 @@ import { Component, OnDestroy, OnInit } from '@angular/core';
import { AuthService } from "./auth/auth.service"; import { AuthService } from "./auth/auth.service";
import { LifeCommonService } from "./common/life-common.service"; import { LifeCommonService } from "./common/life-common.service";
import { Subscription } from "rxjs/index"; import { Subscription } from "rxjs/index";
import {Router, NavigationStart} from '@angular/router';
declare var wx: any; declare var wx: any;
@Component({ @Component({
selector: 'app-root', selector: 'app-root',
...@@ -14,8 +16,9 @@ export class AppComponent implements OnInit, OnDestroy { ...@@ -14,8 +16,9 @@ export class AppComponent implements OnInit, OnDestroy {
currentVersion: any; currentVersion: any;
isNeedAlert: boolean; isNeedAlert: boolean;
dialogInfo: any; dialogInfo: any;
// 是否显示首页浮标
constructor(private authService: AuthService, private lifeCommonService: LifeCommonService) { isShowIndexBtn: boolean;
constructor(private router: Router,private authService: AuthService, private lifeCommonService: LifeCommonService) {
this.subscription = lifeCommonService.shareStatus$.subscribe(status => { this.subscription = lifeCommonService.shareStatus$.subscribe(status => {
this.shareGuidePageEnable = status == '1'; this.shareGuidePageEnable = status == '1';
}); });
...@@ -30,6 +33,12 @@ export class AppComponent implements OnInit, OnDestroy { ...@@ -30,6 +33,12 @@ export class AppComponent implements OnInit, OnDestroy {
}); });
this.getVersion(); this.getVersion();
this.router.events.forEach((event) => {
if (event instanceof NavigationStart) {
// 控制首页浮标显示与否
this.isShowIndexBtn = event.url == '/approval_list';
}
});
} }
ngOnDestroy() { ngOnDestroy() {
......
...@@ -13,13 +13,14 @@ import { DatePipe } from "@angular/common"; ...@@ -13,13 +13,14 @@ import { DatePipe } from "@angular/common";
import { SafeHtmlPipe } from './safe-html.pipe'; import { SafeHtmlPipe } from './safe-html.pipe';
import { LocalStorage } from './domain/local.storage'; import { LocalStorage } from './domain/local.storage';
import { BrowserAnimationsModule } from "@angular/platform-browser/animations"; import { BrowserAnimationsModule } from "@angular/platform-browser/animations";
import { DragDirective } from './directive/drag.directive';
@NgModule({ @NgModule({
declarations: [ declarations: [
AppComponent, AppComponent,
PageNotFoundComponent, PageNotFoundComponent,
SafeHtmlPipe SafeHtmlPipe,
DragDirective
], ],
imports: [ imports: [
BrowserModule, BrowserModule,
......
import {Directive, ElementRef, EventEmitter, HostListener, Input, Output, Renderer2} from '@angular/core';
@Directive({
selector: '[appAutoFixed]'
})
export class AutoFixedDirective {
// 元素距离顶部的原始距离
toTop: number = 0;
// 吸顶元素
toTopElement: any;
// 吸顶元素id
// tslint:disable-next-line:no-input-rename
@Input('appAutoFixed') selector: string = '';
@Output() updateTabMenuId = new EventEmitter<string>();
@HostListener('scroll', ['$event'])
onScroll($event: Event) {
if (this.er.nativeElement.scrollTop >= this.toTop) {
this.renderer2.addClass(this.toTopElement, 'autofixed');
} else {
this.renderer2.removeClass(this.toTopElement, 'autofixed');
}
this.updateTabMenuId.emit(this.er.nativeElement.scrollTop);
}
constructor(private er: ElementRef, private renderer2: Renderer2) {
setTimeout(() => {
this.toTopElement = this.er.nativeElement.querySelector('#' + this.selector);
this.toTop = this.toTopElement.offsetTop;
}, 1000);
}
}
import {Directive, ElementRef, OnInit, HostListener} from '@angular/core';
import {Router} from '@angular/router';
@Directive({
selector: '[appDrag]'
})
export class DragDirective implements OnInit {
isDown = false;
cur: any = {
x: 0,
y: 0
}; // 记录鼠标点击事件的位置
disX: number; // 鼠标移动的X轴距离
disY: number; // 鼠标移动的Y轴距离
offsetX: number; // 元素的左偏移量
offsetY: number; // 元素的上偏移量
pageX: number; // 当前页面的X轴距离
pageY: number; // 当前页面的Y轴距离
x: number; // 元素移动之后的X轴位置
y: number; // 元素移动之后的Y轴位置
constructor(public el: ElementRef, private router: Router) {
}
// 点击事件
@HostListener('touchstart', ['$event'])
ontouchstart(event) {
this.start(event);
}
// 监听document移动事件事件
@HostListener('document:touchmove', ['$event'])
ontouchmove(event) {
// 判断该元素是否被点击了。
this.move(event)
}
// 监听document离开事件
@HostListener('document:touchend', ['$event'])
ontouchend(event) {
// 只用当元素移动过了,离开函数体才会触发。
this.end();
}
@HostListener('mouseup', ['$event'])
onMouseup(event) {
// 只用当元素移动过了,离开函数体才会触发。
this.router.navigate(['/']);
}
ngOnInit() {
}
// 点击开始移动
start(event) {
this.isDown = true;
let touch;
if (event.touches) {
touch = event.touches[0];
} else {
touch = event;
}
this.disX = this.disY = 0;
this.cur.x = touch.clientX;
this.cur.y = touch.clientY;
this.pageX = document.body.clientWidth;
this.pageY = document.body.clientHeight;
this.offsetX = this.el.nativeElement.offsetLeft;
this.offsetY = this.el.nativeElement.offsetTop;
}
// 移动
move(event) {
// 阻止页面的滑动默认事件
event.preventDefault();
if (this.isDown) {
let touch;
if (event.touches) {
touch = event.touches[0];
} else {
touch = event;
}
this.disX = touch.clientX - this.cur.x;
this.disY = touch.clientY - this.cur.y;
this.x = this.offsetX + this.disX;
this.y = this.offsetY + this.disY;
if (this.x < 0) {
this.x = 0
}
if (this.x > document.body.clientWidth - 60) {
this.x = document.body.clientWidth - 60;
}
if (this.y < 0) {
this.y = 0
}
if (this.y > document.body.clientHeight - 120) {
this.y = document.body.clientHeight - 120;
}
this.el.nativeElement.style.left = this.x + 'px';
this.el.nativeElement.style.top = this.y + 'px';
}
}
// 鼠标释放
end() {
this.isDown = false;
if (this.disX !== 0 || this.disY !== 0) {
if (parseInt(this.el.nativeElement.style.left, 0) < document.body.clientWidth / 2) {
this.el.nativeElement.style.left = '0px';
} else {
this.el.nativeElement.style.left = 'calc(100% - 70px)';
}
return;
} else {
// 阻止点透事件
setTimeout(() => {
this.router.navigate(['/'])
}, 300)
}
}
}
<div class="wrapper"> <div class="wrapper">
<div class="title"> <div class="title" *ngIf="!approvalIdentity">
欢迎加入银盾大家庭 欢迎加入银盾大家庭
</div> </div>
<div class="content"> <div class="content">
...@@ -33,4 +33,8 @@ ...@@ -33,4 +33,8 @@
<footer class="fixed" (click)="next()"> <footer class="fixed" (click)="next()">
确认并下一步 确认并下一步
</footer> </footer>
<div id="page" *ngIf="approvalIdentity">
<div (click)="goBack()">上一页</div>
<div (click)="viewNext()">下一页</div>
</div>
</div> </div>
\ No newline at end of file
...@@ -11,6 +11,7 @@ export class EmployeeInfoComponent implements OnInit { ...@@ -11,6 +11,7 @@ export class EmployeeInfoComponent implements OnInit {
hiringBasicInfoId:any; hiringBasicInfoId:any;
membership:any; membership:any;
mobileNo:string; mobileNo:string;
approvalIdentity:any;
constructor(private activatedRoute: ActivatedRoute, constructor(private activatedRoute: ActivatedRoute,
private router: Router,public lifeCommonService:LifeCommonService, private router: Router,public lifeCommonService:LifeCommonService,
public myService:MyService) { } public myService:MyService) { }
...@@ -18,6 +19,7 @@ export class EmployeeInfoComponent implements OnInit { ...@@ -18,6 +19,7 @@ export class EmployeeInfoComponent implements OnInit {
ngOnInit() { ngOnInit() {
const title = this.activatedRoute.snapshot.data[0]['title']; const title = this.activatedRoute.snapshot.data[0]['title'];
this.lifeCommonService.setTitle(title); this.lifeCommonService.setTitle(title);
this.approvalIdentity = this.activatedRoute.snapshot.queryParams.approvalIdentity?this.activatedRoute.snapshot.queryParams.approvalIdentity:null;
this.hiringBasicInfoId = this.activatedRoute.snapshot.queryParams.hiringBasicInfoId?this.activatedRoute.snapshot.queryParams.hiringBasicInfoId:null; this.hiringBasicInfoId = this.activatedRoute.snapshot.queryParams.hiringBasicInfoId?this.activatedRoute.snapshot.queryParams.hiringBasicInfoId:null;
this.mobileNo = this.activatedRoute.snapshot.queryParams.mobileNo?this.activatedRoute.snapshot.queryParams.mobileNo:null; this.mobileNo = this.activatedRoute.snapshot.queryParams.mobileNo?this.activatedRoute.snapshot.queryParams.mobileNo:null;
this.queryWholeInfo(this.hiringBasicInfoId) this.queryWholeInfo(this.hiringBasicInfoId)
...@@ -32,4 +34,12 @@ export class EmployeeInfoComponent implements OnInit { ...@@ -32,4 +34,12 @@ export class EmployeeInfoComponent implements OnInit {
this.membership = res['data']['hiringMemberShip']; this.membership = res['data']['hiringMemberShip'];
}) })
} }
goBack(){
history.go(-1)
}
viewNext(){
this.router.navigate(['/employee_basic_info'],{ queryParams: { hiringBasicInfoId:this.hiringBasicInfoId,approvalIdentity:this.approvalIdentity} });
}
} }
...@@ -181,7 +181,7 @@ export class PersonalStatementComponent implements OnInit { ...@@ -181,7 +181,7 @@ export class PersonalStatementComponent implements OnInit {
if(scrollTop==0){ if(scrollTop==0){
setTimeout(() => { setTimeout(() => {
this.agreeBtnShow = true; this.agreeBtnShow = true;
}, 5000); }, 1000);
} }
}, 500); }, 500);
this.curContract = contractItem.termNote; this.curContract = contractItem.termNote;
......
...@@ -22,5 +22,8 @@ ...@@ -22,5 +22,8 @@
<div (click)="goBack()">上一页</div> <div (click)="goBack()">上一页</div>
<div (click)="viewNext()">下一页</div> <div (click)="viewNext()">下一页</div>
</div> </div>
<footer class="fixed" *ngIf="approvalIdentity && viewApprovalInfo!=0" (click)="returnResult()">
返回审批结果
</footer>
</div> </div>
<ydlife-alert *ngIf="isNeedAlert" [dialogInfo]="dialogInfo" (popInfo)="getPopInfo()"></ydlife-alert> <ydlife-alert *ngIf="isNeedAlert" [dialogInfo]="dialogInfo" (popInfo)="getPopInfo()"></ydlife-alert>
\ No newline at end of file
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
.signature_action{ .signature_action{
display: flex; display: flex;
justify-content: space-evenly; justify-content: space-evenly;
img{max-width: 74.52px;max-height: 74.52px;} margin-top: 20px;
img{max-width: 60px;max-height: 60px;}
} }
} }
\ No newline at end of file
...@@ -33,13 +33,13 @@ export class SignatureComponent implements OnInit { ...@@ -33,13 +33,13 @@ export class SignatureComponent implements OnInit {
ngOnInit() { ngOnInit() {
this.approvalIdentity = this.activatedRoute.snapshot.queryParams.approvalIdentity?this.activatedRoute.snapshot.queryParams.approvalIdentity:null; this.approvalIdentity = this.activatedRoute.snapshot.queryParams.approvalIdentity?this.activatedRoute.snapshot.queryParams.approvalIdentity:null;
this.signaturePadOptions = { this.signaturePadOptions = {
minWidth: 2, minWidth: 0.5,
maxWidth: 5, maxWidth: 3,
dotSize: 1.5, dotSize: 1.5,
penColor: "#333", penColor: "#333",
/* INVERSE BECAUSE IT IS SHOW ONLY IN LANDSCAPE */ /* INVERSE BECAUSE IT IS SHOW ONLY IN LANDSCAPE */
canvasWidth: document.body.clientWidth-26, canvasWidth: document.body.clientWidth-26,
canvasHeight: 400, canvasHeight: 280,
// backgroundColor:"rgb(248 248 248)" // backgroundColor:"rgb(248 248 248)"
} }
const title = this.activatedRoute.snapshot.data[0]['title']; const title = this.activatedRoute.snapshot.data[0]['title'];
...@@ -90,6 +90,7 @@ export class SignatureComponent implements OnInit { ...@@ -90,6 +90,7 @@ export class SignatureComponent implements OnInit {
this.approveStatus = res['data']['hiringBasicInfo']['approveStatus']; this.approveStatus = res['data']['hiringBasicInfo']['approveStatus'];
if(res['data']['hiringBasicInfo']['personalSignOssPath']){ if(res['data']['hiringBasicInfo']['personalSignOssPath']){
this.imgStr = res['data']['hiringBasicInfo']['personalSignOssPath']; this.imgStr = res['data']['hiringBasicInfo']['personalSignOssPath'];
//控制查询的图片显示
this.isSignatureShow = true; this.isSignatureShow = true;
}else{ }else{
this.isSignatureShow = false; this.isSignatureShow = false;
...@@ -128,6 +129,10 @@ export class SignatureComponent implements OnInit { ...@@ -128,6 +129,10 @@ export class SignatureComponent implements OnInit {
if(this.isSignatureShow == true){ if(this.isSignatureShow == true){
this.isSignatureShow = false; this.isSignatureShow = false;
this.signaturePad.clear(); this.signaturePad.clear();
}else{
if(!this.approvalIdentity){
this.signaturePad.clear();
}
} }
} }
...@@ -138,4 +143,9 @@ export class SignatureComponent implements OnInit { ...@@ -138,4 +143,9 @@ export class SignatureComponent implements OnInit {
goBack(){ goBack(){
history.go(-1) history.go(-1)
} }
returnResult(){
this.router.navigate([`/approval_result_list`],{queryParams:{hiringBasicInfoId:this.hiringBasicInfoId,approvalIdentity:true}})
}
} }
.wrapper{ .wrapper{
padding: 10px 15px; padding: 10px 15px;
font-size: 15px;
.title{ .title{
font-size: 15px; font-size: 18px;
font-weight: bold; font-weight: bold;
margin: 10px auto; margin: 10px auto;
} }
.form-control{
font-size: 16px;
}
} }
\ No newline at end of file
...@@ -28,7 +28,7 @@ export class ApprovalCommentsComponent implements OnInit { ...@@ -28,7 +28,7 @@ export class ApprovalCommentsComponent implements OnInit {
showAlert(approvingStatus) { showAlert(approvingStatus) {
this.approvingStatus = approvingStatus; this.approvingStatus = approvingStatus;
ModalService.alert('确认审批', `是否确定${this.approvingStatus==1?'通过':'拒绝'}该经纪人报聘?`, [ ModalService.alert(`${this.approvingStatus==1?'通过审批':'确认拒绝'}`, `是否确定${this.approvingStatus==1?'通过':'拒绝'}该经纪人报聘?`, [
{ text: '取消', onPress: () => console.log('取消') }, { text: '取消', onPress: () => console.log('取消') },
{ text: '确定', onPress: () => this.hiringApprove()} { text: '确定', onPress: () => this.hiringApprove()}
]); ]);
...@@ -49,10 +49,16 @@ export class ApprovalCommentsComponent implements OnInit { ...@@ -49,10 +49,16 @@ export class ApprovalCommentsComponent implements OnInit {
hiringApproveStepsSeq:sessionStorage.getItem('hiringApproveStepsSeq') hiringApproveStepsSeq:sessionStorage.getItem('hiringApproveStepsSeq')
} }
this.myService.hiringApprove(param).subscribe((res)=>{ this.myService.hiringApprove(param).subscribe((res)=>{
this.openPopInfo(res['message']);
setTimeout(() => { if(res['success']){
this.router.navigate(['/approval_result_list'],{ queryParams: { hiringBasicInfoId:this.hiringBasicInfoId,approvalIdentity:this.approvalIdentity} }); this.openPopInfo('保存成功!');
}, 3000); setTimeout(() => {
this.router.navigate(['/approval_result_list'],{ queryParams: { hiringBasicInfoId:this.hiringBasicInfoId,approvalIdentity:this.approvalIdentity} });
}, 3000);
}else{
this.openPopInfo(res['message']);
}
}) })
} }
// 打开弹窗 // 打开弹窗
......
...@@ -10,11 +10,19 @@ ...@@ -10,11 +10,19 @@
justify-content: space-evenly; justify-content: space-evenly;
border-bottom: 1px #ededed solid; border-bottom: 1px #ededed solid;
background: #fff; background: #fff;
position: fixed;
top: 0;
height: 51px;
width: 100%;
z-index: 1;
min-width: 320px;
max-width: 640px;
li { li {
margin-right: 10px; margin-right: 10px;
line-height: 30px; line-height: 30px;
height: 30px; height: 30px;
text-align: center; text-align: center;
cursor: pointer;
h3 { h3 {
font-weight: normal; font-weight: normal;
font-size: 16px; font-size: 16px;
...@@ -31,6 +39,7 @@ ...@@ -31,6 +39,7 @@
} }
} }
.salesContent{ .salesContent{
padding-top: 51px;
.salesItem{ .salesItem{
// border-bottom: 1px #dcdcdc solid; // border-bottom: 1px #dcdcdc solid;
padding: 10px 10px 10px 15px; padding: 10px 10px 10px 15px;
......
...@@ -25,16 +25,16 @@ ...@@ -25,16 +25,16 @@
</span> </span>
</div> </div>
<div style="background: #fafafa;border-radius: 5px;padding: 10px;position: relative;" <div style="background: #fafafa;border-radius: 5px;padding: 10px;position: relative;"
*ngIf="recordsItem.interviewAssessment && recordsItem.interviewAssessment.length < 30"> *ngIf="recordsItem.interviewAssessment && recordsItem.interviewAssessment.length < 32">
{{recordsItem.interviewAssessment.substr(0,recordsItem.interviewAssessment.length)}} {{recordsItem.interviewAssessment.substr(0,recordsItem.interviewAssessment.length)}}
</div> </div>
<div style="background: #fafafa;border-radius: 5px;padding: 10px;position: relative;" (click)="open(recordsItem)" <div style="background: #fafafa;border-radius: 5px;padding: 10px;position: relative;" (click)="open(recordsItem)"
*ngIf="recordsItem.interviewAssessment && recordsItem.interviewAssessment.length > 30 && !recordsItem.actived"> *ngIf="recordsItem.interviewAssessment && recordsItem.interviewAssessment.length > 32 && !recordsItem.actived">
{{recordsItem.interviewAssessment.substr(0,30)}} {{recordsItem.interviewAssessment.substr(0,32)}} ...
<span class="icon-ar-r iconfont" style="position: absolute;right: 15px;bottom: 5px;"></span> <span class="icon-ar-r iconfont" style="position: absolute;right: 5px;bottom: 5px;"></span>
</div> </div>
<div style="background: #fafafa;border-radius: 5px;padding: 10px;position: relative;" (click)="open(recordsItem)" <div style="background: #fafafa;border-radius: 5px;padding: 10px;position: relative;" (click)="open(recordsItem)"
*ngIf="recordsItem.interviewAssessment && recordsItem.interviewAssessment.length >30 && recordsItem.actived"> *ngIf="recordsItem.interviewAssessment && recordsItem.interviewAssessment.length >32 && recordsItem.actived">
{{recordsItem.interviewAssessment}} {{recordsItem.interviewAssessment}}
</div> </div>
</div> </div>
...@@ -51,8 +51,9 @@ ...@@ -51,8 +51,9 @@
</div> </div>
</div> </div>
<div class="footer" (click)="jumpToDetail()"> <div class="footer" style="justify-content: center;">
查看资料 <span class="iconfont icon-fanhui" (click)="prev()"></span>
<div (click)="jumpToDetail()">查看资料<span *ngIf="viewApprovalInfo == 0">并审批</span></div>
</div> </div>
<ydlife-toast *ngIf="toastDialog" [toastInfo]="toastInfo"></ydlife-toast> <ydlife-toast *ngIf="toastDialog" [toastInfo]="toastInfo"></ydlife-toast>
...@@ -42,6 +42,9 @@ ...@@ -42,6 +42,9 @@
} }
} }
.record_content:last-child{ .record_content:last-child{
.line{
display: none;
}
hr{ hr{
display: none; display: none;
} }
...@@ -98,4 +101,10 @@ ...@@ -98,4 +101,10 @@
color: #fff; color: #fff;
background: #1b5b99; background: #1b5b99;
font-size: 18px; font-size: 18px;
.icon-fanhui{
position: absolute;
left: 0;
width: 30px;
text-align: center;
}
} }
\ No newline at end of file
...@@ -21,6 +21,7 @@ export class ApprovalResultListComponent implements OnInit { ...@@ -21,6 +21,7 @@ export class ApprovalResultListComponent implements OnInit {
toastInfo: any; toastInfo: any;
isShow:boolean = false; isShow:boolean = false;
remark:string; remark:string;
viewApprovalInfo:any;
constructor(private router:Router,public lifeCommonService:LifeCommonService,private myService:MyService,private activatedRoute: ActivatedRoute) { } constructor(private router:Router,public lifeCommonService:LifeCommonService,private myService:MyService,private activatedRoute: ActivatedRoute) { }
ngOnInit() { ngOnInit() {
...@@ -30,6 +31,7 @@ export class ApprovalResultListComponent implements OnInit { ...@@ -30,6 +31,7 @@ export class ApprovalResultListComponent implements OnInit {
this.hiringBasicInfoId = this.activatedRoute.snapshot.queryParams.hiringBasicInfoId?this.activatedRoute.snapshot.queryParams.hiringBasicInfoId:null; this.hiringBasicInfoId = this.activatedRoute.snapshot.queryParams.hiringBasicInfoId?this.activatedRoute.snapshot.queryParams.hiringBasicInfoId:null;
this.practitionerId = JSON.parse(localStorage.getItem('lifeCustomerInfo'))['practitionerId']; this.practitionerId = JSON.parse(localStorage.getItem('lifeCustomerInfo'))['practitionerId'];
this.PractitionerHiringApproveRecords(); this.PractitionerHiringApproveRecords();
this.viewApprovalInfo = sessionStorage.getItem('viewApprovalInfo');
} }
PractitionerHiringApproveRecords(){ PractitionerHiringApproveRecords(){
...@@ -55,7 +57,7 @@ export class ApprovalResultListComponent implements OnInit { ...@@ -55,7 +57,7 @@ export class ApprovalResultListComponent implements OnInit {
} }
jumpToDetail(){ jumpToDetail(){
this.router.navigate([`/employee_basic_info`],{queryParams:{hiringBasicInfoId:this.hiringBasicInfoId,approvalIdentity:this.approvalIdentity}}) this.router.navigate([`/employee_info`],{queryParams:{hiringBasicInfoId:this.hiringBasicInfoId,approvalIdentity:this.approvalIdentity}})
} }
getDefaultHeadImg(str){ getDefaultHeadImg(str){
if(!str){ if(!str){
...@@ -79,4 +81,8 @@ export class ApprovalResultListComponent implements OnInit { ...@@ -79,4 +81,8 @@ export class ApprovalResultListComponent implements OnInit {
open(item){ open(item){
item.actived = !item.actived; item.actived = !item.actived;
} }
prev(){
this.router.navigate([`/approval_list`])
}
} }
...@@ -119,6 +119,7 @@ ...@@ -119,6 +119,7 @@
<div class="content_item" *ngFor="let menuItemContent of menuItem['content']" href="javascript:;" <div class="content_item" *ngFor="let menuItemContent of menuItem['content']" href="javascript:;"
(click)="menuNavigation(menuItemContent)"> (click)="menuNavigation(menuItemContent)">
<!-- <span class="iconfont" [ngClass]="menuItemContent.icon"></span> --> <!-- <span class="iconfont" [ngClass]="menuItemContent.icon"></span> -->
<span *ngIf="menuItemContent.dot"></span>
<img [src]="getImgUrl(menuItemContent.icon)" alt=""> <img [src]="getImgUrl(menuItemContent.icon)" alt="">
<div style="font-size: 13px;">{{menuItemContent.subtitle}}</div> <div style="font-size: 13px;">{{menuItemContent.subtitle}}</div>
</div> </div>
......
...@@ -298,9 +298,19 @@ ul,ol{ ...@@ -298,9 +298,19 @@ ul,ol{
align-items: center; align-items: center;
width: 25%; width: 25%;
margin-bottom: 10px; margin-bottom: 10px;
position: relative;
img{ img{
max-width: 44%; max-width: 44%;
}
span{
display: inline-block;
width: 10px;
height: 10px;
position: absolute;
background: red;
border-radius: 50%;
right: 30%;
top: 10%;
} }
// .iconfont{ // .iconfont{
// color: #ff002a; // color: #ff002a;
......
...@@ -37,6 +37,8 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit { ...@@ -37,6 +37,8 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit {
taskLen:Array<any> = []; taskLen:Array<any> = [];
person:any; person:any;
showFlag:boolean = false; showFlag:boolean = false;
approvarList:Array<any>;
dotFlag:boolean = false;
constructor( constructor(
private router: Router, private router: Router,
public lifeCommonService: LifeCommonService, public lifeCommonService: LifeCommonService,
...@@ -67,6 +69,7 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit { ...@@ -67,6 +69,7 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit {
this.queryScheduleTrackList(); this.queryScheduleTrackList();
//活动量得分查询 //活动量得分查询
this.queryPEPScore(); this.queryPEPScore();
this.listQuery();
} }
ngAfterViewInit() { ngAfterViewInit() {
...@@ -98,7 +101,7 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit { ...@@ -98,7 +101,7 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit {
// { no: 16, subtitle: '团队增员', icon: 'recruiting', path: '', routerLink: '' }, // { no: 16, subtitle: '团队增员', icon: 'recruiting', path: '', routerLink: '' },
{ no: 16, subtitle: '团队增员', icon: 'recruiting', path: '', routerLink: 'recruiting' }, { no: 16, subtitle: '团队增员', icon: 'recruiting', path: '', routerLink: 'recruiting' },
{ no: 18, subtitle: '招募海报', icon: 'poster_r', path: '', routerLink: '' }, { no: 18, subtitle: '招募海报', icon: 'poster_r', path: '', routerLink: '' },
{ no: 22, subtitle: '报聘审批', icon: 'approval', path: '', routerLink: 'approval_list' } { no: 22, subtitle: '报聘审批', icon: 'approval', path: '', routerLink: 'approval_list',dot: this.dotFlag}
], ],
// isShow: this.isShow // isShow: this.isShow
isShow: true isShow: true
...@@ -365,4 +368,20 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit { ...@@ -365,4 +368,20 @@ export class MyCenterHomeComponent implements OnInit, AfterViewInit {
jumpToChunYu(){ jumpToChunYu(){
window.location.href = `https://h5.futurebaobei.com/h5/product/detail/7?channel=yindun&channelStaff=${this.lifeCustomerInfo.practitionerId}` window.location.href = `https://h5.futurebaobei.com/h5/product/detail/7?channel=yindun&channelStaff=${this.lifeCustomerInfo.practitionerId}`
} }
//查看判断待审批列表小圆点
listQuery(){
this.myService.listQuery({practitionerId:this.lifeCustomerInfo.practitionerId,approvingStatus:0}).subscribe((res)=>{
if(res['success']){
this.approvarList = res['data']['hiringListInfoList'];
if(this.approvarList.length>0){
this.dotFlag = true;
}else{
this.dotFlag = false;
}
}else{
alert(res['message'])
}
})
}
} }
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<div class="tooltip-inner">手机号码格式不正确</div> <div class="tooltip-inner">手机号码格式不正确</div>
</div> </div>
</div> </div>
<div class="sw-form-control"> <div class="sw-form-control" style="margin-bottom: 15px;">
<label for="email">常用邮箱</label> <label for="email">常用邮箱</label>
<input type="email" placeholder="请输入邮箱" name="email" id="email" [(ngModel)]="customer.email" maxlength="100"> <input type="email" placeholder="请输入邮箱" name="email" id="email" [(ngModel)]="customer.email" maxlength="100">
<div class="tooltip top" role="tooltip" *ngIf="this.telflag==false && this.emailflag==false"> <div class="tooltip top" role="tooltip" *ngIf="this.telflag==false && this.emailflag==false">
...@@ -24,6 +24,10 @@ ...@@ -24,6 +24,10 @@
<div class="tooltip-inner">邮箱格式不正确</div> <div class="tooltip-inner">邮箱格式不正确</div>
</div> </div>
</div> </div>
<div class="sw-form-control">
<label for="name">姓名</label>
<input type="text" placeholder="请输入姓名" name="email" id="email" [(ngModel)]="name" disabled>
</div>
</div> </div>
<div class="submit commonBtn defineFixed" (click)="submit()"> <div class="submit commonBtn defineFixed" (click)="submit()">
提交 提交
......
...@@ -14,6 +14,7 @@ export class SuggestionComponent implements OnInit { ...@@ -14,6 +14,7 @@ export class SuggestionComponent implements OnInit {
customer: any; customer: any;
isNeedAlert: boolean; isNeedAlert: boolean;
dialogInfo: any; dialogInfo: any;
name:string;
constructor(private myService:MyService) { constructor(private myService:MyService) {
this.customer = { this.customer = {
customerId:JSON.parse(localStorage.getItem('lifeCustomerInfo')).customerId, customerId:JSON.parse(localStorage.getItem('lifeCustomerInfo')).customerId,
...@@ -26,6 +27,7 @@ export class SuggestionComponent implements OnInit { ...@@ -26,6 +27,7 @@ export class SuggestionComponent implements OnInit {
} }
ngOnInit() { ngOnInit() {
this.name = JSON.parse(localStorage.getItem('lifeCustomerInfo')).practitionerBasicInfo.name;
} }
focus() { focus() {
......
...@@ -31,6 +31,12 @@ ...@@ -31,6 +31,12 @@
<ul class="icon_lists dib-box"> <ul class="icon_lists dib-box">
<li class="dib"> <li class="dib">
<span class="icon iconfont">&#xe683;</span>
<div class="name">返回</div>
<div class="code-name">&amp;#xe683;</div>
</li>
<li class="dib">
<span class="icon iconfont">&#xe680;</span> <span class="icon iconfont">&#xe680;</span>
<div class="name">资料</div> <div class="name">资料</div>
<div class="code-name">&amp;#xe680;</div> <div class="code-name">&amp;#xe680;</div>
...@@ -1119,6 +1125,15 @@ ...@@ -1119,6 +1125,15 @@
<ul class="icon_lists dib-box"> <ul class="icon_lists dib-box">
<li class="dib"> <li class="dib">
<span class="icon iconfont icon-fanhui"></span>
<div class="name">
返回
</div>
<div class="code-name">.icon-fanhui
</div>
</li>
<li class="dib">
<span class="icon iconfont icon-ziliao"></span> <span class="icon iconfont icon-ziliao"></span>
<div class="name"> <div class="name">
资料 资料
...@@ -2706,6 +2721,14 @@ ...@@ -2706,6 +2721,14 @@
<li class="dib"> <li class="dib">
<svg class="icon svg-icon" aria-hidden="true"> <svg class="icon svg-icon" aria-hidden="true">
<use xlink:href="#icon-fanhui"></use>
</svg>
<div class="name">返回</div>
<div class="code-name">#icon-fanhui</div>
</li>
<li class="dib">
<svg class="icon svg-icon" aria-hidden="true">
<use xlink:href="#icon-ziliao"></use> <use xlink:href="#icon-ziliao"></use>
</svg> </svg>
<div class="name">资料</div> <div class="name">资料</div>
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -6,6 +6,13 @@ ...@@ -6,6 +6,13 @@
"description": "", "description": "",
"glyphs": [ "glyphs": [
{ {
"icon_id": "7186603",
"name": "返回",
"font_class": "fanhui",
"unicode": "e683",
"unicode_decimal": 59011
},
{
"icon_id": "9575614", "icon_id": "9575614",
"name": "资料", "name": "资料",
"font_class": "ziliao", "font_class": "ziliao",
......
...@@ -20,6 +20,9 @@ Created by iconfont ...@@ -20,6 +20,9 @@ Created by iconfont
/> />
<missing-glyph /> <missing-glyph />
<glyph glyph-name="fanhui" unicode="&#59011;" d="M349.184 382.976l435.2 432.64c13.824 13.824 13.824 39.424 0 53.76l-13.824 13.824c-13.824 13.824-39.424 13.824-53.76 0L239.616 410.624c-13.824-13.824-13.824-39.424 0-53.76l474.624-472.576c13.824-13.824 39.424-13.824 53.76 0l13.824 13.824c13.824 13.824 13.824 39.424 0 53.76l-432.64 431.104z" horiz-adv-x="1024" />
<glyph glyph-name="ziliao" unicode="&#59008;" d="M78.762667 659.690667v-708.906667h708.928v708.906667H78.784z m0 78.762666h708.928a78.997333 78.997333 0 0 0 78.762666-78.762666v-708.906667A78.997333 78.997333 0 0 0 787.690667-128H78.784A78.997333 78.997333 0 0 0 0-49.237333V659.690667a78.997333 78.997333 0 0 0 78.762667 78.762666z m157.546666-236.309333h393.834667c23.637333 0 39.402667-15.744 39.402667-39.381333 0-23.616-15.765333-39.381333-39.402667-39.381334H236.309333c-23.637333 0-39.381333 15.765333-39.381333 39.381334 0 23.637333 15.744 39.381333 39.381333 39.381333z m0-157.525333h393.834667c23.637333 0 39.402667-15.765333 39.402667-39.381334 0-23.637333-15.765333-39.381333-39.402667-39.381333H236.309333c-23.637333 0-39.381333 15.744-39.381333 39.381333 0 23.616 15.744 39.381333 39.381333 39.381334z m0-157.546667h393.834667c23.637333 0 39.402667-15.744 39.402667-39.381333s-15.765333-39.381333-39.402667-39.381334H236.309333c-23.637333 0-39.381333 15.744-39.381333 39.381334s15.744 39.381333 39.381333 39.381333z m39.381334 630.165333c-23.637333 0-39.381333 15.744-39.381334 39.381334S252.053333 896 275.690667 896h630.165333C972.8 896 1024 844.8 1024 777.856v-630.165333c0-23.637333-15.744-39.381333-39.381333-39.381334s-39.381333 15.744-39.381334 39.381334V777.856c0 23.616-15.765333 39.381333-39.381333 39.381333H275.690667z" horiz-adv-x="1024" /> <glyph glyph-name="ziliao" unicode="&#59008;" d="M78.762667 659.690667v-708.906667h708.928v708.906667H78.784z m0 78.762666h708.928a78.997333 78.997333 0 0 0 78.762666-78.762666v-708.906667A78.997333 78.997333 0 0 0 787.690667-128H78.784A78.997333 78.997333 0 0 0 0-49.237333V659.690667a78.997333 78.997333 0 0 0 78.762667 78.762666z m157.546666-236.309333h393.834667c23.637333 0 39.402667-15.744 39.402667-39.381333 0-23.616-15.765333-39.381333-39.402667-39.381334H236.309333c-23.637333 0-39.381333 15.765333-39.381333 39.381334 0 23.637333 15.744 39.381333 39.381333 39.381333z m0-157.525333h393.834667c23.637333 0 39.402667-15.765333 39.402667-39.381334 0-23.637333-15.765333-39.381333-39.402667-39.381333H236.309333c-23.637333 0-39.381333 15.744-39.381333 39.381333 0 23.616 15.744 39.381333 39.381333 39.381334z m0-157.546667h393.834667c23.637333 0 39.402667-15.744 39.402667-39.381333s-15.765333-39.381333-39.402667-39.381334H236.309333c-23.637333 0-39.381333 15.744-39.381333 39.381334s15.744 39.381333 39.381333 39.381333z m39.381334 630.165333c-23.637333 0-39.381333 15.744-39.381334 39.381334S252.053333 896 275.690667 896h630.165333C972.8 896 1024 844.8 1024 777.856v-630.165333c0-23.637333-15.744-39.381333-39.381333-39.381334s-39.381333 15.744-39.381334 39.381334V777.856c0 23.616-15.765333 39.381333-39.381333 39.381333H275.690667z" horiz-adv-x="1024" />
......
...@@ -247,3 +247,27 @@ footer.fixed{ ...@@ -247,3 +247,27 @@ footer.fixed{
} }
} }
.returnIndexBox {
position: fixed;
left: calc(100% - 70px);
top: calc(100% - 150px);
z-index: 1001;
background: rgba(0, 0, 0, 0.5);
color: #fff;
width: 60px;
height: 60px;
border-radius: 50%;
overflow: hidden;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 12px;
}
.returnIndexBox .iconfont {
font-size: 22px;
}
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