|
|
@@ -0,0 +1,231 @@
|
|
|
+<template>
|
|
|
+ <el-dialog :title="$t('一人一档')" :visible.sync="visible" width="1200px" append-to-body>
|
|
|
+ <el-card>
|
|
|
+ <div slot="header" class="clearfix">
|
|
|
+ <span>基本资料</span>
|
|
|
+ </div>
|
|
|
+ <div class="el-descriptions">
|
|
|
+ <div class="el-descriptions__body">
|
|
|
+ <table class="el-descriptions__table is-bordered el-descriptions--big" style="border: 1px solid #e6ebf5;">
|
|
|
+ <tbody>
|
|
|
+ <tr class="el-descriptions-row" rowspan="3">
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 姓名</th>
|
|
|
+ <td colspan="1" class="el-descriptions-item__cell el-descriptions-item__content"> {{staff.name}}</td>
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 性别</th>
|
|
|
+ <td colspan="1" class="el-descriptions-item__cell el-descriptions-item__content" > {{sexFormat(staff)}}</td>
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 年龄</th>
|
|
|
+ <td colspan="1" class="el-descriptions-item__cell el-descriptions-item__content">{{staff.birthday}}</td>
|
|
|
+ <td colspan="1" rowspan="3" class="el-descriptions-item__cell el-descriptions-item__content">
|
|
|
+ <img :src="staff.photo" />
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ <tbody>
|
|
|
+ <tr class="el-descriptions-row">
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 学历</th>
|
|
|
+ <td colspan="1" class="el-descriptions-item__cell el-descriptions-item__content">{{educationFormat(staff)}}</td>
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 专业</th>
|
|
|
+ <td colspan="1" class="el-descriptions-item__cell el-descriptions-item__content">{{staff.birthday}}</td>
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 工号</th>
|
|
|
+ <td colspan="1" class="el-descriptions-item__cell el-descriptions-item__content">{{staff.staffid}}</td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ <tbody>
|
|
|
+ <tr class="el-descriptions-row">
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 入职时间
|
|
|
+ </th>
|
|
|
+ <td colspan="1" class="el-descriptions-item__cell el-descriptions-item__content"></td>
|
|
|
+ <th colspan="1" class="el-descriptions-item__cell el-descriptions-item__label is-bordered-label "> 当前岗位
|
|
|
+ </th>
|
|
|
+ <td colspan="3" class="el-descriptions-item__cell el-descriptions-item__content">{{actualpostFormat(staff)}}</td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card>
|
|
|
+ <div slot="header" class="clearfix">
|
|
|
+ <span>公司级培训</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card>
|
|
|
+ <div slot="header" class="clearfix">
|
|
|
+ <span>装置级培训</span>
|
|
|
+ </div>
|
|
|
+ </el-card>
|
|
|
+ <el-card>
|
|
|
+ <div slot="header" class="clearfix">
|
|
|
+ <span>专项培训</span>
|
|
|
+ </div>
|
|
|
+ <el-table :data="planList" border>
|
|
|
+ <el-table-column label="培训内容" align="center" prop="plantName" :show-overflow-tooltip="true"/>
|
|
|
+ <el-table-column label="开始日期" align="center" prop="startDate" width="100">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{ parseTime(scope.row.startDate, '{y}-{m}-{d}') }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="结束日期" align="center" prop="endDate" width="100">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{ parseTime(scope.row.endDate, '{y}-{m}-{d}') }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="学时" align="center" prop="classHour" :show-overflow-tooltip="true"/>
|
|
|
+ <el-table-column label="具体内容" align="center" prop="classContent" :show-overflow-tooltip="true"/>
|
|
|
+ <el-table-column label="评分" align="center" prop="classContent" :show-overflow-tooltip="true"/>
|
|
|
+ </el-table>
|
|
|
+ </el-card>
|
|
|
+ </el-dialog>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import Treeselect from "@riophae/vue-treeselect";
|
|
|
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
|
|
|
+import {listPlan} from "@/api/training/spec/plan";
|
|
|
+
|
|
|
+export default {
|
|
|
+ name: "Resume",
|
|
|
+ components: {Treeselect},
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ // 遮罩层
|
|
|
+ loading: true,
|
|
|
+ visible: false,
|
|
|
+ // 选中数组
|
|
|
+ ids: [],
|
|
|
+ staff: null,
|
|
|
+ dataListSelections: [],
|
|
|
+ // 装置名称字典
|
|
|
+ plantCodeOptions: [],
|
|
|
+ // 性别字典
|
|
|
+ sexOptions: [],
|
|
|
+ // 部门字典
|
|
|
+ unitOptions: [],
|
|
|
+ // 班值字典
|
|
|
+ teamOptions: [],
|
|
|
+ // 实际岗位字典
|
|
|
+ actualpostOptions: [],
|
|
|
+ // 学历字典
|
|
|
+ educationOptions: [],
|
|
|
+ // 英语能力字典
|
|
|
+ enAbilityOptions: [],
|
|
|
+ // 特殊职能字典
|
|
|
+ specialDutyOptions: [],
|
|
|
+ // 非单个禁用
|
|
|
+ single: true,
|
|
|
+ // 非多个禁用
|
|
|
+ multiple: true,
|
|
|
+ // 显示搜索条件
|
|
|
+ showSearch: false,
|
|
|
+ // 总条数
|
|
|
+ total: 0,
|
|
|
+ // 培训计划表格数据
|
|
|
+ planList: [],
|
|
|
+ // 弹出层标题
|
|
|
+ title: "",
|
|
|
+ // 操作
|
|
|
+ operation: "",
|
|
|
+ // 部门树选项
|
|
|
+ deptOptions: undefined,
|
|
|
+ clientHeight: 300,
|
|
|
+ // 是否显示弹出层
|
|
|
+ open: false,
|
|
|
+ // 学习状态字典
|
|
|
+ studyStateOptions: [],
|
|
|
+ // 学员列表
|
|
|
+ successorOptions: [],
|
|
|
+ // 查询参数
|
|
|
+ queryParams: {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 20,
|
|
|
+ staffId: null,
|
|
|
+ plantName: null,
|
|
|
+ startDate: null,
|
|
|
+ endDate: null,
|
|
|
+ classHour: null,
|
|
|
+ studyState: null
|
|
|
+ },
|
|
|
+ // 表单参数
|
|
|
+ form: {},
|
|
|
+ // 表单校验
|
|
|
+ rules: {}
|
|
|
+ };
|
|
|
+ },
|
|
|
+ watch: {},
|
|
|
+ created() {
|
|
|
+ this.getDicts("PLANT_DIVIDE").then(response => {
|
|
|
+ this.plantCodeOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("sys_user_sex").then(response => {
|
|
|
+ this.sexOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("STAFF_UNIT").then(response => {
|
|
|
+ this.unitOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("TEAM_DIVIDE").then(response => {
|
|
|
+ this.teamOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("ACTUALPOST").then(response => {
|
|
|
+ this.actualpostOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("EDUCATION").then(response => {
|
|
|
+ this.educationOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("ENGLISHABILITY").then(response => {
|
|
|
+ this.enAbilityOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getDicts("SPECIAL_DUTY").then(response => {
|
|
|
+ this.specialDutyOptions = response.data;
|
|
|
+ });
|
|
|
+ this.getPlanList()
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ init(row) {
|
|
|
+ this.visible = true
|
|
|
+ this.staff = row.staff
|
|
|
+ this.queryParams.staffId = row.staff.staffid
|
|
|
+ },
|
|
|
+ /** 查询培训计划列表 */
|
|
|
+ getPlanList() {
|
|
|
+ this.loading = true;
|
|
|
+ listPlan(this.queryParams).then(response => {
|
|
|
+ this.planList = response.rows;
|
|
|
+ this.total = response.total;
|
|
|
+ this.loading = false;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 装置名称字典翻译
|
|
|
+ plantCodeFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.plantCodeOptions, row.plantCode);
|
|
|
+ },
|
|
|
+ // 性别字典翻译
|
|
|
+ sexFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.sexOptions, row.sex);
|
|
|
+ },
|
|
|
+ // 部门字典翻译
|
|
|
+ unitFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.unitOptions, row.unit);
|
|
|
+ },
|
|
|
+ // 班值字典翻译
|
|
|
+ teamFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.teamOptions, row.team);
|
|
|
+ },
|
|
|
+ // 实际岗位字典翻译
|
|
|
+ actualpostFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.actualpostOptions, row.actualpost);
|
|
|
+ },
|
|
|
+ // 学历字典翻译
|
|
|
+ educationFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.educationOptions, row.education);
|
|
|
+ },
|
|
|
+ // 英语能力字典翻译
|
|
|
+ enAbilityFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.enAbilityOptions, row.enAbility);
|
|
|
+ },
|
|
|
+ // 特殊职能字典翻译
|
|
|
+ specialDutyFormat(row, column) {
|
|
|
+ return this.selectDictLabel(this.specialDutyOptions, row.specialDuty);
|
|
|
+ },
|
|
|
+ }
|
|
|
+};
|
|
|
+</script>
|