This commit is contained in:
zhangsir
2024-03-18 17:35:23 +08:00
parent 5d202b98df
commit 5cfa2a4d07

View File

@@ -6,7 +6,7 @@
<div class="btnText">报告上传</div>
</div>
</div>
<div class="headers_item">
<!-- <div class="headers_item">
<span class="headers_item_text">发布状态</span>
<a-select
v-model:value="searchParam.status"
@@ -15,26 +15,29 @@
:options="searchStatusVal"
allowClear
></a-select>
</div>
<div class="headers_item">
<a-input
v-model:value="searchParam.createName"
style="width: 270px; height: 40px; border-radius: 8px"
placeholder="请输入测评名称"
allowClear
showSearch
>
</a-input>
</div>
<div class="headers_item btn">
<div class="headers_item_btn btn1">
<div class="search"></div>
<div class="btnText">搜索</div>
</div> -->
<div style="display: flex;">
<div class="headers_item">
<a-input
v-model:value="searchParam.createName"
style="width: 270px; height: 40px; border-radius: 8px"
placeholder="请输入测评名称"
allowClear
showSearch
>
</a-input>
</div>
<div class="headers_item_btn btn2">
<div class="search"></div>
<div class="btnText">重置</div>
<div class="headers_item btn">
<div class="headers_item_btn btn1">
<div class="search"></div>
<div class="btnText">搜索</div>
</div>
<div class="headers_item_btn btn2">
<div class="search"></div>
<div class="btnText">重置</div>
</div>
</div>
</div>
</div>
<div class="content">
@@ -66,9 +69,9 @@
</a-tooltip>
</a-button>
<DropDown value="更多">
<a-button type="link" class="btn_item">
<a-button type="link" class="btn_item" @click="openRemarks(record)">
<span class="release"></span>
发布
修改备注
</a-button>
<a-button type="link" class="btn_item" @click="authorityItem(record)">
<span class="authority"></span>
@@ -76,7 +79,7 @@
</a-button>
<a-button type="link" class="btn_item" @click="editName(record)">
<span class="edit"></span>
编辑
修改测评
</a-button>
<a-button type="link" class="btn_item" @click="deleteItem(record)">
<span class="delete"></span>
@@ -106,6 +109,7 @@
</div>
</div>
</div>
<!-- 上传 -->
<a-modal
v-model:visible="bg_check"
:footer="null"
@@ -133,7 +137,15 @@
<span>测评标题</span>
</div>
<div class="bg_body_input">
<a-input v-model:value="input" />
<NameInput
ref="nameRef"
placeholder="请输入测评标题(限60个字以内)"
v-model:value="formData.assessmentName"
v-model:validated="formData.validated"
:id="formData.id"
:maxlength="60"
show-count
></NameInput>
</div>
</div>
<div class="bg_body_bt" v-if="btShow">
@@ -142,7 +154,7 @@
<a-upload name="avatar" list-type="picture-card" class="avatar-uploader" :show-upload-list="false"
:headers="headers"
:before-upload="beforeUpload">
<img class="i_upload_img" v-if="imageUrl" :src="imageUrl" alt="avatar" />
<img class="i_upload_img" v-if="formData.imageUrl" :src="formData.imageUrl" alt="avatar" />
<div class="i_upload" v-else>
<div class="addimg">
<div class="heng"></div>
@@ -162,8 +174,7 @@
<div class="bg_body_input">
<span style="color: #999ba3">
1仅支持1个zip压缩包和pdf报告上传<br/>
2多个压缩包上传名称不能重复测评名称+数字大五职业性格测评01大五职业性格测评02以此类推<br/>
3单个附件命名规则测评名称+姓名+工号名称中间用英文输入法-连接例如大五职业性格测评-李玉冰-00004409.pdf<br/>
2单个附件命名规则测评名称+姓名+工号名称中间用英文输入法-连接例如大五职业性格测评-李玉冰-00004409.pdf
</span>
</div>
</div>
@@ -220,6 +231,12 @@
</div>
</div>
</div>
<div class="bg_body_bt">
<div class="bg_body_bttext">备注</div>
<div class="bg_body_input">
<a-textarea style="width: 334px;height: 88px;" v-model:value="formData.remarks" showCount :maxlength="200" />
</div>
</div>
<div class="bg_footer">
<div class="btn btn6" @click="of_exit">
<div class="btnText">取消</div>
@@ -235,6 +252,7 @@
</div>
</div>
</a-modal>
<!-- 修改测评名称 -->
<a-modal
v-model:visible="bg_edit"
:footer="null"
@@ -246,14 +264,22 @@
<div class="bg_headers"></div>
<div class="bg_main">
<div class="bg_main_header">
<div>测评编辑</div>
<div>修改测评名称</div>
<div class="bg_main_header_close" @click="of_edit"></div>
</div>
<div class="bg_body">
<div class="bg_body_bt" v-if="btShow">
<div class="bg_body_bttext">测评名称</div>
<div class="bg_body_bt" style="align-items: flex-start;" v-if="btShow">
<div class="bg_body_bttext" style="margin-top: 5px;">测评名称</div>
<div class="bg_body_input">
<a-input v-model:value="input" />
<NameInput
ref="nameRef"
placeholder="请输入测评标题(限60个字以内)"
v-model:value="formData.assessmentName"
v-model:validated="formData.validated"
:id="formData.id"
:maxlength="60"
show-count
></NameInput>
</div>
</div>
<div class="bg_footer">
@@ -262,7 +288,7 @@
</div>
<a-button
class="btn btn6"
@click="createft"
@click="editUpdata"
>
确定
</a-button>
@@ -271,6 +297,7 @@
</div>
</div>
</a-modal>
<!-- 权限 -->
<a-modal
v-model:visible="bg_setting"
:footer="null"
@@ -308,12 +335,10 @@
</div>
<div class="headers_item btn">
<div class="headers_item_btn btn1">
<div class="search"></div>
<div class="btnText">搜索</div>
</div>
<div class="headers_item_btn btn2">
<div class="search"></div>
<div class="btnText">重置</div>
<div class="headers_item_btn btn2" @click="addAuths">
<div class="btnText">添加</div>
</div>
</div>
</div>
@@ -347,7 +372,7 @@
</div>
<a-button
class="btn btn6"
@click="createft"
@click="settingUp"
>
确定
</a-button>
@@ -356,6 +381,7 @@
</div>
</div>
</a-modal>
<!-- 上传结果 -->
<a-modal
v-model:visible="bg_results"
:footer="null"
@@ -378,7 +404,146 @@
</div>
<a-button
class="btn btn6"
@click="createft"
@click="resultsUp"
>
确定
</a-button>
</div>
</div>
</div>
</div>
</a-modal>
<!-- 修改备注 -->
<a-modal
v-model:visible="bg_remarks"
:footer="null"
closable="false"
style="margin-top: 400px"
@cancel="of_remarks"
>
<div class="selectonlineface" :style="{ display: bg_remarks ? 'block' : 'none' }">
<div class="bg_headers"></div>
<div class="bg_main">
<div class="bg_main_header">
<div>修改备注</div>
<div class="bg_main_header_close" @click="of_remarks"></div>
</div>
<div class="bg_body">
<div class="bg_body_bt" style="align-items: flex-start;" v-if="btShow">
<div class="bg_body_bttext" style="margin-top: 5px;">备注</div>
<div class="bg_body_input">
<a-textarea style="width: 334px;height: 88px;" v-model:value="formData.remarks" showCount :maxlength="200" />
</div>
</div>
<div class="bg_footer">
<div class="btn btn6" @click="of_remarks">
<div class="btnText">取消</div>
</div>
<a-button
class="btn btn6"
@click="remarksUpdata"
>
确定
</a-button>
</div>
</div>
</div>
</div>
</a-modal>
<!-- 添加权限设置 -->
<a-modal
v-model:visible="bg_addsetting"
:footer="null"
closable="false"
style="margin-top: 400px"
@cancel="of_addsetting"
>
<div class="selectonlineface" style="width: 1000px;" :style="{ display: bg_addsetting ? 'block' : 'none' }">
<div class="bg_headers"></div>
<div class="bg_main">
<div class="bg_main_header">
<div>添加普通管理员</div>
<div class="bg_main_header_close" @click="of_addsetting"></div>
</div>
<div class="headers">
<div class="headers_item">
<a-input
v-model:value="searchParam.createName"
style="width: 270px; height: 40px; border-radius: 8px"
placeholder="工号/姓名"
allowClear
showSearch
>
</a-input>
</div>
<div class="headers_item btn">
<div class="headers_item_btn btn1">
<div class="search"></div>
<div class="btnText">搜索</div>
</div>
<div class="headers_item_btn btn2">
<div class="search"></div>
<div class="btnText">重置</div>
</div>
</div>
</div>
<div class="content" style="padding: 10px 35px;">
<a-table
:columns="columnsAdd"
:data-source="tableDataAdd"
:loading="tableLoadingAdd"
:scroll="{ x: 'max-content' }"
:pagination="paginationAdd"
>
<template #allocation="{ record, column }">
<a-space>
<a-checkbox-group v-model:value="record.checkclick">
<a-row>
<a-col :span="5">
<a-checkbox value="0">查看</a-checkbox>
</a-col>
<a-col :span="7">
<a-checkbox value="1">编辑备注</a-checkbox>
</a-col>
<a-col :span="5">
<a-checkbox value="2">上传</a-checkbox>
</a-col>
<a-col :span="5">
<a-checkbox value="3">清空</a-checkbox>
</a-col>
<a-col :span="7" style="margin-left: 59px;">
<a-checkbox value="4">编辑测评</a-checkbox>
</a-col>
<a-col :span="5">
<a-checkbox value="5">下载</a-checkbox>
</a-col>
<a-col :span="5">
<a-checkbox value="6">删除</a-checkbox>
</a-col>
</a-row>
</a-checkbox-group>
</a-space>
</template>
<template #addAuthority="{ record, column }">
<a-space>
<a-button type="link" @click="textEnableAdd(record)">
<span>启用</span>
</a-button>
<a-button type="link" @click="textDeleteAdd(record,index)">
<span class="download">删除</span>
</a-button>
</a-space>
</template>
</a-table>
</div>
<div class="bg_body">
<div class="bg_footer" style="margin-left: 288px;">
<div class="btn btn6" @click="of_addsetting">
<div class="btnText">取消</div>
</div>
<a-button
class="btn btn6"
@click="addSettingUp"
>
确定
</a-button>
@@ -396,21 +561,29 @@ import DropDown from "@/components/common/DropDown";
import {getCookieForName} from "@/api/method";
import { useRouter } from "vue-router";
import dialog from "@/utils/dialog";
import NameInput from "@/components/project/NameInput";
export default {
name: 'evaluationUpload',
components:{
DropDown,
NameInput,
},
setup() {
const router = useRouter();
const state = reactive({
tableLoading: false,
tableLoadingAdd: false,
tableLoadingAut: false,
total: 40,
totalAdd: 40,
params: {
pageNo: 1,
pageSize: 10,
},
paramsAdd: {
pageNo: 1,
pageSize: 10,
},
pageSize: 10,
tableDataTotal: 40,
searchParam:{
@@ -419,20 +592,33 @@ import dialog from "@/utils/dialog";
status: 0,
status2: 0,
},
formData: {
assessmentName: '',
validated: 0,
id: '',
imageUrl: '',
remarks: '',
},
bg_check: false,
btShow: true,
imageUrl: '',
bg_edit: false,
bg_setting: false,
bg_addsetting: false,
bg_results: false,
bg_remarks: false,
filesList:[{a:11}],
tableData:[{
id: 1,
evaluationName:'111',
reportReleaseNums: '22',
reportSum: '22',
publishStatus: 2,
uploadTime: '2020-01-01'
uploadTime: '2020-01-01',
remarks: '我是第一个'
},{
id: 2,
evaluationName:'222',
reportSum: '22',
uploadTime: '2020-01-01',
remarks: '我是第二个'
}],
tableData1:[
{
@@ -440,23 +626,45 @@ import dialog from "@/utils/dialog";
jobId: '111',
organDepart: 'aaaaa',
status: 1,
addTime: '2023-02-5'
addTime: '2023-02-5',
authority: '删除',
},
{
name: '111',
jobId: '111',
organDepart: 'aaaaa',
status: 2,
addTime: '2023-02-5'
addTime: '2023-02-5',
authority: '删除,添加',
},
],
tableDataAdd:[
{
id:1,
name:'1111',
jobId:1111,
job:'京东方',
addTime:'2021-02-02',
checkclick: ['1']
},
{
id:2,
name:'2222',
jobId:2222,
job:'京东方',
addTime:'2021-02-02',
checkclick: ['0','5']
},
]
})
const searchStatusVal = ref([
{ value: 0, label: "全部" },
{ value: 1, label: "草稿" },
{ value: 2, label: "更新待发布" },
{ value: 3, label: "已发布" },
]);
// const searchStatusVal = ref([
// { value: 0, label: "全部" },
// { value: 1, label: "草稿" },
// { value: 2, label: "更新待发布" },
// { value: 3, label: "已发布" },
// ]);
//分配权限
const searchStatusVal2 = ref([
{ value: 0, label: "全部" },
{ value: 1, label: "启用" },
@@ -474,19 +682,32 @@ import dialog from "@/utils/dialog";
state.params.pageNo = page
state.params.pageSize = pageSize
}
// 添加权限
const paginationAdd = computed(() => ({
total: state.totalAdd,
showSizeChanger: true,
showQuickJumper: false,
current: state.paramsAdd.pageNo,
pageSize: state.paramsAdd.pageSize,
onChange: changePaginationsAdd,
}))
const changePaginationsAdd = (page,pageSize) => {
state.paramsAdd.pageNo = page
state.paramsAdd.pageSize = pageSize
}
const columns = ref([
{
title: "测评名称",
dataIndex: "evaluationName",
key: "evaluationName",
title: "ID",
dataIndex: "id",
key: "id",
className: "h",
ellipsis: true,
width: 100,
},
{
title: "报告发布量",
dataIndex: "reportReleaseNums",
key: "reportReleaseNums",
title: "测评名称",
dataIndex: "evaluationName",
key: "evaluationName",
className: "h",
ellipsis: true,
width: 100,
@@ -500,17 +721,17 @@ import dialog from "@/utils/dialog";
width: 100,
},
{
title: "发布状态",
dataIndex: "publishStatus",
key: "publishStatus",
title: "上传日期",
dataIndex: "uploadTime",
key: "uploadTime",
className: "h",
ellipsis: true,
width: 100,
},
{
title: "上传日期",
dataIndex: "uploadTime",
key: "uploadTime",
title: "备注",
dataIndex: "remarks",
key: "remarks",
className: "h",
ellipsis: true,
width: 100,
@@ -557,6 +778,14 @@ import dialog from "@/utils/dialog";
ellipsis: true,
width: 100,
},
{
title: "权限",
dataIndex: "authority",
key: "authority",
className: "h",
ellipsis: true,
width: 100,
},
{
title: "状态",
dataIndex: "status",
@@ -581,10 +810,63 @@ import dialog from "@/utils/dialog";
slots: { customRender: "action" },
},
])
const columnsAdd = ref([
{
title: "姓名",
dataIndex: "name",
key: "name",
className: "h",
ellipsis: true,
width: 100,
},
{
title: "工号",
dataIndex: "jobId",
key: "jobId",
className: "h",
ellipsis: true,
width: 100,
},
{
title: "组织名称",
dataIndex: "job",
key: "job",
className: "h",
ellipsis: true,
width: 100,
},
{
title: "添加时间",
dataIndex: "addTime",
key: "addTime",
className: "h",
ellipsis: true,
width: 100,
},
{
title: "配置权限",
dataIndex: "checkclick",
key: "checkclick",
className: "h",
ellipsis: true,
width: 300,
slots: { customRender: "allocation" },
},
{
title: "操作",
width: "20%",
dataIndex: "id",
key: "id",
align: "center",
slots: { customRender: "addAuthority" },
},
])
const textEnable = (record) => {
record.status = 1
console.log(record,'aaaaa')
}
const textDisabled = (record) => {
record.status = 2
console.log(record,'aaaa')
}
const textDelete = (record) => {
@@ -608,6 +890,7 @@ import dialog from "@/utils/dialog";
//报告上传
const bgupload = () => {
state.bg_check = true;
state.formData = {}
}
const bgupload1 = () => {
state.bg_check = true;
@@ -617,9 +900,13 @@ import dialog from "@/utils/dialog";
state.bg_check = false;
state.btShow = true
}
// 上传结果
const of_results = () => {
state.bg_results = false
}
const resultsUp = () => {
state.bg_results = false
}
const tan = () => {
console.log('aaa')
}
@@ -672,31 +959,87 @@ import dialog from "@/utils/dialog";
}
})
}
// 备注
const openRemarks = (record) => {
state.bg_remarks = true
state.formData.remarks = record.remarks
}
const of_remarks = () => {
state.bg_remarks = false
}
const remarksUpdata = () => {
state.tableData[0].remarks = state.formData.remarks
state.bg_remarks = false
}
// 权限
const authorityItem = () => {
state.bg_setting = true
}
const of_setting = () => {
state.bg_setting = false
}
const editName = () => {
const settingUp = () => {
state.bg_setting = false
}
// 测评
const editName = (record) => {
state.bg_edit = true
console.log(record,'aaa')
state.formData.assessmentName = record.evaluationName
}
const of_edit = () => {
state.bg_edit = false
}
const editUpdata = () => {
state.bg_edit = false
}
//添加权限
const addAuths = () => {
state.bg_addsetting = true
state.formData[0].checkbox = ['1','5']
}
const of_addsetting = () => {
state.bg_addsetting = false
}
const addSettingUp = () => {
state.bg_addsetting = false
console.log(state.formData,'aaa')
}
const textEnableAdd = (record) => {
console.log(record,'record')
record.checkbox = ['1','5','6','3']
}
const textDeleteAdd = (record,index) => {
dialog({
content: '是否删除?',
ok: () => {
state.tableDataAdd.splice(index,1)
}
})
}
return {
...toRefs(state),
searchStatusVal,
// searchStatusVal,
addAuths,
of_addsetting,
addSettingUp,
textEnableAdd,
textDeleteAdd,
searchStatusVal2,
columns,
columnsAdd,
columns2,
bgupload,
of_exit,
reportUpload,
of_results,
resultsUp,
tan,
of_setting,
settingUp,
of_edit,
editUpdata,
// createft,
bgupload1,
headers,
@@ -705,10 +1048,15 @@ import dialog from "@/utils/dialog";
deleteItem,
emptyItem,
editName,
openRemarks,
of_remarks,
remarksUpdata,
authorityItem,
changePagination,
changePaginations,
changePaginationsAdd,
pagination,
paginationAdd,
textDisabled,
textDelete,
textEnable,