|
@@ -1,262 +1,308 @@
|
|
|
<div class="employee-detail-container" *ngIf="employee() as emp">
|
|
|
- <!-- 页面头部 -->
|
|
|
- <div class="detail-header">
|
|
|
- <button mat-icon-button (click)="goBack()" class="back-button">
|
|
|
- <mat-icon>arrow_back_ios</mat-icon>
|
|
|
+ <!-- iOS风格导航栏 -->
|
|
|
+ <div class="ios-navbar">
|
|
|
+ <button class="nav-back-btn" (click)="goBack()">
|
|
|
+ <mat-icon>chevron_left</mat-icon>
|
|
|
+ <span>返回</span>
|
|
|
</button>
|
|
|
- <h1>员工详情</h1>
|
|
|
- <div class="header-actions">
|
|
|
- <button mat-icon-button (click)="shareEmployee()" class="action-button">
|
|
|
- <mat-icon>share</mat-icon>
|
|
|
+ <h1 class="nav-title">员工详情</h1>
|
|
|
+ <button class="nav-more-btn" [matMenuTriggerFor]="headerMenu">
|
|
|
+ <mat-icon>more_horiz</mat-icon>
|
|
|
+ </button>
|
|
|
+ <mat-menu #headerMenu="matMenu" class="ios-action-menu">
|
|
|
+ <button mat-menu-item (click)="editEmployee()" class="ios-menu-item">
|
|
|
+ <mat-icon>edit</mat-icon>
|
|
|
+ <span>编辑信息</span>
|
|
|
</button>
|
|
|
- <button mat-icon-button [matMenuTriggerFor]="headerMenu" class="action-button">
|
|
|
- <mat-icon>more_horiz</mat-icon>
|
|
|
+ <button mat-menu-item (click)="exportEmployee()" class="ios-menu-item">
|
|
|
+ <mat-icon>file_download</mat-icon>
|
|
|
+ <span>导出档案</span>
|
|
|
</button>
|
|
|
- <mat-menu #headerMenu="matMenu" class="ios-action-menu">
|
|
|
- <button mat-menu-item (click)="editEmployee()" class="ios-menu-item">
|
|
|
- <mat-icon>edit</mat-icon>
|
|
|
- <span>编辑信息</span>
|
|
|
- </button>
|
|
|
- <button mat-menu-item (click)="exportEmployee()" class="ios-menu-item">
|
|
|
- <mat-icon>file_download</mat-icon>
|
|
|
- <span>导出档案</span>
|
|
|
- </button>
|
|
|
- <mat-divider></mat-divider>
|
|
|
- <button mat-menu-item (click)="deleteEmployee()" class="ios-menu-item danger">
|
|
|
- <mat-icon>delete</mat-icon>
|
|
|
- <span>删除员工</span>
|
|
|
- </button>
|
|
|
- </mat-menu>
|
|
|
- </div>
|
|
|
+ <mat-divider></mat-divider>
|
|
|
+ <button mat-menu-item (click)="deleteEmployee()" class="ios-menu-item danger">
|
|
|
+ <mat-icon>delete</mat-icon>
|
|
|
+ <span>删除员工</span>
|
|
|
+ </button>
|
|
|
+ </mat-menu>
|
|
|
</div>
|
|
|
|
|
|
- <!-- 员工头像和基本信息卡片 -->
|
|
|
- <div class="profile-card">
|
|
|
- <div class="avatar-section">
|
|
|
- <div class="avatar-container">
|
|
|
- <img [src]="emp.avatar || 'assets/images/default-avatar.svg'" alt="员工头像" class="avatar">
|
|
|
- <div class="status-indicator" [ngClass]="getStatusClass(emp.status)"></div>
|
|
|
- </div>
|
|
|
+ <!-- iOS风格员工头像区域 -->
|
|
|
+ <div class="ios-profile-header">
|
|
|
+ <div class="profile-avatar">
|
|
|
+ <img [src]="emp.avatar || 'assets/images/default-avatar.svg'" alt="员工头像" class="avatar-image">
|
|
|
+ <div class="status-dot" [ngClass]="getStatusClass(emp.status)"></div>
|
|
|
</div>
|
|
|
- <div class="basic-info">
|
|
|
- <h2 class="employee-name">{{emp.name}}</h2>
|
|
|
- <p class="employee-position">{{emp.position}} · {{emp.department}}</p>
|
|
|
- <div class="employee-meta">
|
|
|
- <span class="employee-id">工号: {{emp.employeeId}}</span>
|
|
|
- <span class="join-date">入职: {{emp.hireDate | date:'yyyy年MM月dd日'}}</span>
|
|
|
- </div>
|
|
|
+ <h2 class="profile-name">{{emp.name}}</h2>
|
|
|
+ <p class="profile-title">{{emp.position}} · {{emp.department}}</p>
|
|
|
+ <div class="profile-actions">
|
|
|
+ <button class="action-btn call-btn" (click)="callEmployee(emp.phone)">
|
|
|
+ <mat-icon>phone</mat-icon>
|
|
|
+ </button>
|
|
|
+ <button class="action-btn message-btn" (click)="emailEmployee(emp.email)">
|
|
|
+ <mat-icon>email</mat-icon>
|
|
|
+ </button>
|
|
|
+ <button class="action-btn share-btn" (click)="shareEmployee()">
|
|
|
+ <mat-icon>share</mat-icon>
|
|
|
+ </button>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <!-- 基础信息卡片 -->
|
|
|
- <div class="info-card">
|
|
|
- <div class="card-header">
|
|
|
+ <!-- iOS风格基础信息列表 -->
|
|
|
+ <div class="ios-section">
|
|
|
+ <div class="section-header">
|
|
|
<h3>基础信息</h3>
|
|
|
- <button mat-icon-button (click)="editBasicInfo()" class="edit-button">
|
|
|
- <mat-icon>edit</mat-icon>
|
|
|
- </button>
|
|
|
</div>
|
|
|
- <div class="info-grid">
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">姓名</div>
|
|
|
- <div class="info-value">{{emp.name}}</div>
|
|
|
+ <div class="ios-list">
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">姓名</span>
|
|
|
+ <span class="item-value">{{emp.name}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">年龄</div>
|
|
|
- <div class="info-value">{{calculateAge(emp.birthDate)}}岁</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">年龄</span>
|
|
|
+ <span class="item-value">{{calculateAge(emp.birthDate)}}岁</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">学历</div>
|
|
|
- <div class="info-value">{{emp.education || '未填写'}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">学历</span>
|
|
|
+ <span class="item-value">{{emp.education || '未填写'}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">工作年限</div>
|
|
|
- <div class="info-value">{{emp.workYears || '未填写'}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">工作年限</span>
|
|
|
+ <span class="item-value">{{emp.workYears || '未填写'}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">求职岗位</div>
|
|
|
- <div class="info-value">{{emp.position}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">求职岗位</span>
|
|
|
+ <span class="item-value">{{emp.position}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">身份证号</div>
|
|
|
- <div class="info-value">{{maskIdCard(emp.idCard)}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">身份证号</span>
|
|
|
+ <span class="item-value">{{maskIdCard(emp.idCard)}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">银行卡号</div>
|
|
|
- <div class="info-value">{{maskBankCard(emp.bankCard)}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">银行卡号</span>
|
|
|
+ <span class="item-value">{{maskBankCard(emp.bankCard)}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="info-item">
|
|
|
- <div class="info-label">手机号码</div>
|
|
|
- <div class="info-value">{{emp.phone}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">手机号码</span>
|
|
|
+ <span class="item-value">{{emp.phone}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <!-- 审核初筛状态卡片 -->
|
|
|
- <div class="screening-card">
|
|
|
- <div class="card-header">
|
|
|
+ <!-- iOS风格审核初筛列表 -->
|
|
|
+ <div class="ios-section">
|
|
|
+ <div class="section-header">
|
|
|
<h3>审核初筛</h3>
|
|
|
- <div class="screening-status" [ngClass]="getScreeningStatusClass(emp.screeningStatus)">
|
|
|
- <mat-icon>{{getScreeningStatusIcon(emp.screeningStatus)}}</mat-icon>
|
|
|
- <span>{{getScreeningStatusText(emp.screeningStatus)}}</span>
|
|
|
+ </div>
|
|
|
+ <div class="ios-list">
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">审核状态</span>
|
|
|
+ <div class="status-badge" [ngClass]="getScreeningStatusClass(emp.screeningStatus)">
|
|
|
+ <mat-icon>{{getScreeningStatusIcon(emp.screeningStatus)}}</mat-icon>
|
|
|
+ <span>{{getScreeningStatusText(emp.screeningStatus)}}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
+ @if (emp.screeningComment) {
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">审核备注</span>
|
|
|
+ <span class="item-value">{{emp.screeningComment}}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ }
|
|
|
+ @if (emp.screeningTime) {
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">审核时间</span>
|
|
|
+ <span class="item-value">{{emp.screeningTime | date:'yyyy-MM-dd HH:mm'}}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ }
|
|
|
</div>
|
|
|
|
|
|
@if (emp.screeningStatus === 'pending') {
|
|
|
- <div class="screening-actions">
|
|
|
- <button mat-raised-button color="primary" (click)="approveScreening()" class="approve-button">
|
|
|
+ <div class="ios-actions">
|
|
|
+ <button class="ios-btn primary" (click)="approveScreening()">
|
|
|
<mat-icon>check_circle</mat-icon>
|
|
|
通过初筛
|
|
|
</button>
|
|
|
- <button mat-stroked-button color="warn" (click)="rejectScreening()" class="reject-button">
|
|
|
+ <button class="ios-btn secondary" (click)="rejectScreening()">
|
|
|
<mat-icon>cancel</mat-icon>
|
|
|
不通过
|
|
|
</button>
|
|
|
</div>
|
|
|
- } @else {
|
|
|
- <div class="screening-result">
|
|
|
- <div class="result-info">
|
|
|
- <div class="result-label">审核结果:</div>
|
|
|
- <div class="result-value" [ngClass]="getScreeningStatusClass(emp.screeningStatus)">
|
|
|
- {{getScreeningStatusText(emp.screeningStatus)}}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- @if (emp.screeningComment) {
|
|
|
- <div class="result-comment">
|
|
|
- <div class="comment-label">审核备注:</div>
|
|
|
- <div class="comment-value">{{emp.screeningComment}}</div>
|
|
|
- </div>
|
|
|
- }
|
|
|
- <div class="result-time">
|
|
|
- 审核时间: {{emp.screeningTime | date:'yyyy-MM-dd HH:mm'}}
|
|
|
- </div>
|
|
|
- </div>
|
|
|
}
|
|
|
</div>
|
|
|
|
|
|
- <!-- 联系信息卡片 -->
|
|
|
- <div class="contact-card">
|
|
|
- <div class="card-header">
|
|
|
+ <!-- iOS风格联系信息列表 -->
|
|
|
+ <div class="ios-section">
|
|
|
+ <div class="section-header">
|
|
|
<h3>联系信息</h3>
|
|
|
- <button mat-icon-button (click)="editContactInfo()" class="edit-button">
|
|
|
- <mat-icon>edit</mat-icon>
|
|
|
- </button>
|
|
|
</div>
|
|
|
- <div class="contact-list">
|
|
|
- <div class="contact-item">
|
|
|
- <mat-icon>phone</mat-icon>
|
|
|
- <div class="contact-info">
|
|
|
- <div class="contact-label">手机号码</div>
|
|
|
- <div class="contact-value">{{emp.phone}}</div>
|
|
|
+ <div class="ios-list">
|
|
|
+ <div class="list-item clickable" (click)="callEmployee(emp.phone)">
|
|
|
+ <div class="item-icon">
|
|
|
+ <mat-icon>phone</mat-icon>
|
|
|
+ </div>
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">手机号码</span>
|
|
|
+ <span class="item-value">{{emp.phone}}</span>
|
|
|
+ </div>
|
|
|
+ <div class="item-action">
|
|
|
+ <mat-icon>chevron_right</mat-icon>
|
|
|
</div>
|
|
|
- <button mat-icon-button (click)="callEmployee(emp.phone)">
|
|
|
- <mat-icon>call</mat-icon>
|
|
|
- </button>
|
|
|
</div>
|
|
|
- <div class="contact-item">
|
|
|
- <mat-icon>email</mat-icon>
|
|
|
- <div class="contact-info">
|
|
|
- <div class="contact-label">邮箱地址</div>
|
|
|
- <div class="contact-value">{{emp.email || '未填写'}}</div>
|
|
|
+ <div class="list-item clickable" (click)="emailEmployee(emp.email)" [class.disabled]="!emp.email">
|
|
|
+ <div class="item-icon">
|
|
|
+ <mat-icon>email</mat-icon>
|
|
|
+ </div>
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">邮箱地址</span>
|
|
|
+ <span class="item-value">{{emp.email || '未填写'}}</span>
|
|
|
+ </div>
|
|
|
+ <div class="item-action">
|
|
|
+ <mat-icon>chevron_right</mat-icon>
|
|
|
</div>
|
|
|
- <button mat-icon-button (click)="emailEmployee(emp.email)" [disabled]="!emp.email">
|
|
|
- <mat-icon>send</mat-icon>
|
|
|
- </button>
|
|
|
</div>
|
|
|
- <div class="contact-item">
|
|
|
- <mat-icon>location_on</mat-icon>
|
|
|
- <div class="contact-info">
|
|
|
- <div class="contact-label">家庭住址</div>
|
|
|
- <div class="contact-value">{{emp.address || '未填写'}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-icon">
|
|
|
+ <mat-icon>location_on</mat-icon>
|
|
|
+ </div>
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">家庭住址</span>
|
|
|
+ <span class="item-value">{{emp.address || '未填写'}}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <!-- 工作信息卡片 -->
|
|
|
- <div class="work-card">
|
|
|
- <div class="card-header">
|
|
|
+ <!-- iOS风格工作信息列表 -->
|
|
|
+ <div class="ios-section">
|
|
|
+ <div class="section-header">
|
|
|
<h3>工作信息</h3>
|
|
|
- <button mat-icon-button (click)="editWorkInfo()" class="edit-button">
|
|
|
- <mat-icon>edit</mat-icon>
|
|
|
- </button>
|
|
|
</div>
|
|
|
- <div class="work-grid">
|
|
|
- <div class="work-item">
|
|
|
- <div class="work-label">所属部门</div>
|
|
|
- <div class="work-value">{{emp.department}}</div>
|
|
|
+ <div class="ios-list">
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">所属部门</span>
|
|
|
+ <span class="item-value">{{emp.department}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="work-item">
|
|
|
- <div class="work-label">职位</div>
|
|
|
- <div class="work-value">{{emp.position}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">职位</span>
|
|
|
+ <span class="item-value">{{emp.position}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="work-item">
|
|
|
- <div class="work-label">员工状态</div>
|
|
|
- <div class="work-value">
|
|
|
- <span class="status-badge" [ngClass]="getStatusClass(emp.status)">
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">员工状态</span>
|
|
|
+ <div class="status-badge" [ngClass]="getStatusClass(emp.status)">
|
|
|
{{emp.status}}
|
|
|
- </span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="work-item">
|
|
|
- <div class="work-label">入职日期</div>
|
|
|
- <div class="work-value">{{emp.hireDate | date:'yyyy年MM月dd日'}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">入职日期</span>
|
|
|
+ <span class="item-value">{{emp.hireDate | date:'yyyy年MM月dd日'}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="work-item">
|
|
|
- <div class="work-label">工作年限</div>
|
|
|
- <div class="work-value">{{calculateWorkYears(emp.hireDate)}}年</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">工作年限</span>
|
|
|
+ <span class="item-value">{{calculateWorkYears(emp.hireDate)}}年</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="work-item">
|
|
|
- <div class="work-label">直属上级</div>
|
|
|
- <div class="work-value">{{emp.supervisor || '未指定'}}</div>
|
|
|
+ <div class="list-item">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">直属上级</span>
|
|
|
+ <span class="item-value">{{emp.supervisor || '未指定'}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <!-- 底部操作按钮 -->
|
|
|
- <div class="bottom-actions">
|
|
|
- <button mat-raised-button color="primary" (click)="editEmployee()" class="action-btn">
|
|
|
+ <!-- iOS风格底部操作按钮 -->
|
|
|
+ <div class="ios-actions">
|
|
|
+ <button class="ios-action-button primary" (click)="editEmployee()">
|
|
|
<mat-icon>edit</mat-icon>
|
|
|
- 编辑信息
|
|
|
+ <span>编辑员工</span>
|
|
|
</button>
|
|
|
- <button mat-stroked-button (click)="viewAttendance()" class="action-btn">
|
|
|
- <mat-icon>event_note</mat-icon>
|
|
|
- 考勤记录
|
|
|
+ <button class="ios-action-button" (click)="viewAttendance()">
|
|
|
+ <mat-icon>schedule</mat-icon>
|
|
|
+ <span>考勤记录</span>
|
|
|
</button>
|
|
|
- <button mat-stroked-button (click)="viewSalary()" class="action-btn">
|
|
|
- <mat-icon>account_balance_wallet</mat-icon>
|
|
|
- 薪资记录
|
|
|
+ <button class="ios-action-button" (click)="viewSalary()">
|
|
|
+ <mat-icon>attach_money</mat-icon>
|
|
|
+ <span>薪资记录</span>
|
|
|
</button>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
-<!-- 审核对话框 -->
|
|
|
-<ng-template #screeningDialog>
|
|
|
- <div class="screening-dialog">
|
|
|
- <h2 mat-dialog-title>审核初筛</h2>
|
|
|
- <mat-dialog-content>
|
|
|
- <form [formGroup]="screeningForm" class="screening-form">
|
|
|
- <div class="form-group">
|
|
|
- <label>审核结果</label>
|
|
|
- <mat-button-toggle-group formControlName="status" class="status-toggle">
|
|
|
- <mat-button-toggle value="approved">通过</mat-button-toggle>
|
|
|
- <mat-button-toggle value="rejected">不通过</mat-button-toggle>
|
|
|
- </mat-button-toggle-group>
|
|
|
+<!-- iOS风格审核对话框 -->
|
|
|
+<div class="ios-modal" [class.show]="showReviewDialog">
|
|
|
+ <div class="modal-backdrop" (click)="closeReviewDialog()"></div>
|
|
|
+ <div class="modal-content">
|
|
|
+ <div class="modal-header">
|
|
|
+ <h3>审核员工</h3>
|
|
|
+ <button class="close-button" (click)="closeReviewDialog()">
|
|
|
+ <mat-icon>close</mat-icon>
|
|
|
+ </button>
|
|
|
+ </div>
|
|
|
+ <div class="modal-body">
|
|
|
+ <div class="ios-section">
|
|
|
+ <div class="section-header">
|
|
|
+ <h4>审核结果</h4>
|
|
|
</div>
|
|
|
-
|
|
|
- <div class="form-group">
|
|
|
- <mat-form-field appearance="outline" class="full-width">
|
|
|
- <mat-label>审核备注</mat-label>
|
|
|
- <textarea matInput formControlName="comment" rows="4" placeholder="请输入审核备注或建议"></textarea>
|
|
|
- </mat-form-field>
|
|
|
+ <div class="ios-list">
|
|
|
+ <div class="list-item clickable" [class.selected]="reviewResult === 'approved'" (click)="reviewResult = 'approved'">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">通过</span>
|
|
|
+ </div>
|
|
|
+ <div class="item-action" *ngIf="reviewResult === 'approved'">
|
|
|
+ <mat-icon>check</mat-icon>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="list-item clickable" [class.selected]="reviewResult === 'rejected'" (click)="reviewResult = 'rejected'">
|
|
|
+ <div class="item-content">
|
|
|
+ <span class="item-label">拒绝</span>
|
|
|
+ </div>
|
|
|
+ <div class="item-action" *ngIf="reviewResult === 'rejected'">
|
|
|
+ <mat-icon>check</mat-icon>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </form>
|
|
|
- </mat-dialog-content>
|
|
|
- <mat-dialog-actions align="end">
|
|
|
- <button mat-button mat-dialog-close>取消</button>
|
|
|
- <button mat-raised-button color="primary" (click)="submitScreening()" [disabled]="screeningForm.invalid">
|
|
|
- 提交审核
|
|
|
- </button>
|
|
|
- </mat-dialog-actions>
|
|
|
+ </div>
|
|
|
+ <div class="ios-section">
|
|
|
+ <div class="section-header">
|
|
|
+ <h4>审核备注</h4>
|
|
|
+ </div>
|
|
|
+ <div class="ios-textarea">
|
|
|
+ <textarea [(ngModel)]="reviewComment" rows="4" placeholder="请输入审核意见..."></textarea>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="modal-actions">
|
|
|
+ <button class="ios-button secondary" (click)="closeReviewDialog()">取消</button>
|
|
|
+ <button class="ios-button primary" (click)="submitReview()">提交审核</button>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
-</ng-template>
|
|
|
+</div>
|