Browse Source

Merge branch 'qin_v5'

yjf_v3
超级管理员 1 year ago
parent
commit
b2d25564c9
  1. 1
      src/components/DesignForm/formControlPropertiNew.vue
  2. 86
      src/views/hr/archives/downpage/xingGeFengXi.vue
  3. 196
      src/views/hr/archives/index.vue

1
src/components/DesignForm/formControlPropertiNew.vue

@ -4237,7 +4237,6 @@ const radioChangeSet = (val:any) => {
</el-form> </el-form>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="表单配置" name="second"> <el-tab-pane label="表单配置" name="second">
{{formConfig}}
<el-form size="small" class="form"> <el-form size="small" class="form">
<el-divider content-position="left">基础配置</el-divider> <el-divider content-position="left">基础配置</el-divider>
<el-form-item v-if="formConfig.classify != 4" class="form_cont"> <el-form-item v-if="formConfig.classify != 4" class="form_cont">

86
src/views/hr/archives/downpage/xingGeFengXi.vue

@ -0,0 +1,86 @@
<!--
@ 作者: 秦东
@ 时间: 2024-09-19 13:16:56
@ 备注: 性格分析过度
-->
<script lang='ts' setup>
const downloadUrl = import.meta.env.VITE_APP_BASE_API+"/systemapi/rongxin/downLoadNineTestPage"
const downloadUrlStis = import.meta.env.VITE_APP_BASE_API+"/systemapi/rongxin/statisticsPersonality"
const props = defineProps({
typeKey: {
type: String,
default: "10000003",
},
downClassType: {
type: Number,
default: 1,
},
orgTree: {
type: Object,
default() {
return {};
},
},
});
const dialogVisible = ref(true)
const emits = defineEmits(["closeXigePage"]);
const searchQuery = reactive({
types:1,
org:"",
keywords:"",
typekey:props.typeKey?props.typeKey.toString():""
})
const handleTypeClose = () => {
emits("closeXigePage")
}
const orgTreeProps ={
children: 'child',
label: 'name',
value:"id"
} //
</script>
<template>
<el-dialog
v-model="dialogVisible"
title="选择下载范围"
width="500"
:before-close="handleTypeClose"
>
<el-form :model="searchQuery" label-width="90px" >
<el-form-item v-if="props.downClassType!=1" label="统计类型" label-position="left">
<el-radio-group v-model="searchQuery.types">
<el-radio :value="1">未做</el-radio>
<el-radio :value="2">已做</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="行政组织" label-position="left">
<el-tree-select
v-model="searchQuery.org"
:data="props.orgTree"
check-strictly
:render-after-expand="false"
:props="orgTreeProps"
clearable
/>
</el-form-item>
<el-form-item label="工号或姓名" label-position="left">
<el-input v-model="searchQuery.keywords" clearable />
</el-form-item>
<el-form-item>
<el-link v-if="props.downClassType==2" type="primary" :underline="false" :href="downloadUrlStis+'?keywords='+searchQuery.keywords+'&org='+searchQuery.org+'&typekey='+searchQuery.typekey+'&types='+searchQuery.types" target="_blank">
<el-button type="primary">
确定下载
</el-button>
</el-link>
<el-link v-else type="primary" :underline="false" :href="downloadUrl+'?keywords='+searchQuery.keywords+'&adminorg='+searchQuery.org+'&typekey='+searchQuery.typekey" target="_blank">
<el-button type="primary">
确定下载
</el-button>
</el-link>
</el-form-item>
</el-form>
</el-dialog>
</template>
<style lang='scss' scoped>
</style>

196
src/views/hr/archives/index.vue

@ -17,7 +17,7 @@ import { uploadUrl } from '@/api/DesignForm'
* 引入页面 * 引入页面
*/ */
import ArchivesCont from '@/views/hr/archives/archivescont.vue' import ArchivesCont from '@/views/hr/archives/archivescont.vue'
import XingGeFengXi from '@/views/hr/archives/downpage/xingGeFengXi.vue'
import { ElScrollbar as ElScrollbarType } from 'element-plus'; import { ElScrollbar as ElScrollbarType } from 'element-plus';
@ -41,6 +41,7 @@ const handleClick = () => {
}) })
} }
const direction = ref("rtl")
// const uploadFFurl = import.meta.env.VITE_APP_BASE_API + "/hrapi/staff/uploadUserFiles" // const uploadFFurl = import.meta.env.VITE_APP_BASE_API + "/hrapi/staff/uploadUserFiles"
const uploadFFurl = import.meta.env.VITE_APP_BASE_API + "/hrapi/staff/uploadUserFilesRedis" const uploadFFurl = import.meta.env.VITE_APP_BASE_API + "/hrapi/staff/uploadUserFilesRedis"
@ -497,7 +498,74 @@ const downLoadTeamTable = () => {
console.log("下团队角色分析表",data) console.log("下团队角色分析表",data)
}) })
} }
const openSetup = ref(false)
/**
@ 作者: 秦东
@ 时间: 2024-09-19 09:57:42
@ 功能: 设置相关操作
*/
const setupClick = () => {
openSetup.value = true
temList()
}
/**
@ 作者: 秦东
@ 时间: 2024-09-19 10:12:29
@ 功能: 关闭设置
*/
const closeSetup = () => {
openSetup.value = false
}
const setupActiveName = ref("1")
watch(() =>setupActiveName.value, (val:any) => {
console.log("切换选项",val)
})
/**
@ 作者: 秦东
@ 时间: 2024-09-19 13:12:29
@ 功能: 下载性格分析表
*/
const openTableType = ref(false)
const downTableType = ref("10000003")
const downClassType = ref(1)
const selectDownTiaojian = (val:string) => {
downTableType.value = val
openTableType.value = true
downClassType.value = 1
}
/**
@ 作者: 秦东
@ 时间: 2024-09-19 13:23:09
@ 功能: 关闭下载页面
*/
const closeXigePage = () => {
openTableType.value = false
}
/**
@ 作者: 秦东
@ 时间: 2024-09-19 13:55:09
@ 功能: 性格类型
*/
const characterList = reactive([
{
label:"性格色彩",
code:"10000001"
},
{
label:"DISC性格特质",
code:"10000002"
},
{
label:"九型人格特质",
code:"10000003"
}
])
const downStatistics = (val:any) => {
console.log("下载数据嗖嗖嗖--->",val)
downTableType.value = val
openTableType.value = true
downClassType.value = 2
}
</script> </script>
<template> <template>
<div class="app-container"> <div class="app-container">
@ -586,7 +654,7 @@ const downLoadTeamTable = () => {
批量导入数据 批量导入数据
</el-button> </el-button>
<el-button <el-button
v-if="false"
v-hasPerm="['287868103478489088']" v-hasPerm="['287868103478489088']"
plain plain
type="primary" type="primary"
@ -596,7 +664,7 @@ const downLoadTeamTable = () => {
导入模板下载 导入模板下载
</el-button> </el-button>
<el-link type="primary" :underline="false" :href="downloadUrl+'?keywords='+searchArchiveQuery.keywords+'&adminorg='+searchArchiveQuery.adminorg+'&emptype='+json2string(searchArchiveQuery.emptype)" target="_blank"><el-button <el-link type="primary" v-if="false" :underline="false" :href="downloadUrl+'?keywords='+searchArchiveQuery.keywords+'&adminorg='+searchArchiveQuery.adminorg+'&emptype='+json2string(searchArchiveQuery.emptype)" target="_blank"><el-button
v-hasPerm="['287868103478489088']" v-hasPerm="['287868103478489088']"
plain plain
@ -605,6 +673,12 @@ const downLoadTeamTable = () => {
<el-icon><Download /></el-icon> <el-icon><Download /></el-icon>
下载团队角色分析表 下载团队角色分析表
</el-button></el-link> </el-button></el-link>
<el-button type="warning" @click="setupClick">
<el-icon><Setting /></el-icon>
设置
</el-button>
</el-space> </el-space>
</div> </div>
<el-table <el-table
@ -808,11 +882,117 @@ const downLoadTeamTable = () => {
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-dialog> </el-dialog>
<!--设置-->
<el-drawer
v-model="openSetup"
title="各行政组织员工信息点在档案模板"
:direction="direction"
:before-close="closeSetup"
:size="500"
class="drwBody"
>
<el-tabs v-model="setupActiveName" type="border-card">
<el-tab-pane label="员工档案导入模版" name="1">
<template #label>
<el-space wrap>
<span class="fa fa-upload"></span>
<span>员工档案导入模版</span>
</el-space>
</template>
<div v-hasPerm="['288626950073757696']" style="flex: auto; text-align:right; margin-bottom:10px;">
<el-button type="primary" @click="setUpNewTemplate">上传新模版</el-button>
</div>
<el-table :data="downTemplate" border style="width: 100%">
<el-table-column prop="orgName" label="行政组织" width="200" />
<el-table-column prop="fileName" label="文件名称">
<template #default="scope">
<el-link type="success" :underline="false" :href="scope.row.fileUrl" target="_blank">{{ scope.row.fileName }}</el-link>
</template>
</el-table-column>
<el-table-column v-hasPerm="['288626867236253696']" prop="address" label="操作" align="center" width="100">
<template #default="scope">
<el-button link type="warning" size="small" @click="editUserTemp(scope.row)">编辑</el-button>
<el-button link type="danger" size="small" @click="delUserTemp(scope.row,3)">删除</el-button>
</template>
</el-table-column>
</el-table>
<div class="pageBox">
<el-pagination layout="prev, pager, next" :total="totalVal" />
</div>
</el-tab-pane>
<el-tab-pane label="性格分析表" name="2">
<template #label>
<el-space wrap>
<span class="fa fa-list"></span>
<span>性格分析表</span>
</el-space>
</template>
<div class="downLink">
<div>团队角色九型人格测试</div>
<div>
<el-button
type="danger"
text
v-hasPerm="['287868103478489088']"
@click="selectDownTiaojian('10000003')"
>
下载
</el-button>
</div>
</div>
<!-- <el-link type="primary" :underline="false" :href="downloadUrl+'?keywords='+searchArchiveQuery.keywords+'&adminorg='+searchArchiveQuery.adminorg+'&emptype='+json2string(searchArchiveQuery.emptype)" target="_blank"><el-button
v-hasPerm="['287868103478489088']"
plain
type="primary"
>
<el-icon><Download /></el-icon>
下载团队角色分析表
</el-button></el-link> -->
</el-tab-pane>
<el-tab-pane label="测试统计" name="3">
<template #label>
<el-space wrap>
<span class="fa fa-bar-chart"></span>
<span>测试统计</span>
</el-space>
</template>
<el-table :data="characterList" border style="width: 100%">
<el-table-column prop="label" label="测试名称" />
<el-table-column label="操作" align="center" width="80">
<template #default="scope">
<el-button link type="danger" size="small" @click="downStatistics(scope.row)">下载</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
</el-drawer>
<XingGeFengXi v-if="openTableType" :down-class-type="downClassType" :org-tree="orgTreeList" @close-xige-page="closeXigePage" />
</el-container> </el-container>
</div> </div>
</template> </template>
<style lang='scss' scoped> <style lang='scss' scoped>
.app-container{
:deep .el-drawer__body{
padding: 0 10px;
}
}
.common-layout{ .common-layout{
height: calc(100% - 60px); height: calc(100% - 60px);
@ -841,5 +1021,13 @@ const downLoadTeamTable = () => {
text-align: center; text-align: center;
display:flex; display:flex;
align-items: center; align-items: center;
width: 100%;
}
.downLink{
display: flex;
width: 100%;
align-items: center;
justify-content: space-between;
} }
</style> </style>

Loading…
Cancel
Save