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 class="btnText">报告上传</div>
</div> </div>
</div> </div>
<div class="headers_item"> <!-- <div class="headers_item">
<span class="headers_item_text">发布状态</span> <span class="headers_item_text">发布状态</span>
<a-select <a-select
v-model:value="searchParam.status" v-model:value="searchParam.status"
@@ -15,7 +15,8 @@
:options="searchStatusVal" :options="searchStatusVal"
allowClear allowClear
></a-select> ></a-select>
</div> </div> -->
<div style="display: flex;">
<div class="headers_item"> <div class="headers_item">
<a-input <a-input
v-model:value="searchParam.createName" v-model:value="searchParam.createName"
@@ -36,6 +37,8 @@
<div class="btnText">重置</div> <div class="btnText">重置</div>
</div> </div>
</div> </div>
</div>
</div> </div>
<div class="content"> <div class="content">
<a-table <a-table
@@ -66,9 +69,9 @@
</a-tooltip> </a-tooltip>
</a-button> </a-button>
<DropDown value="更多"> <DropDown value="更多">
<a-button type="link" class="btn_item"> <a-button type="link" class="btn_item" @click="openRemarks(record)">
<span class="release"></span> <span class="release"></span>
发布 修改备注
</a-button> </a-button>
<a-button type="link" class="btn_item" @click="authorityItem(record)"> <a-button type="link" class="btn_item" @click="authorityItem(record)">
<span class="authority"></span> <span class="authority"></span>
@@ -76,7 +79,7 @@
</a-button> </a-button>
<a-button type="link" class="btn_item" @click="editName(record)"> <a-button type="link" class="btn_item" @click="editName(record)">
<span class="edit"></span> <span class="edit"></span>
编辑 修改测评
</a-button> </a-button>
<a-button type="link" class="btn_item" @click="deleteItem(record)"> <a-button type="link" class="btn_item" @click="deleteItem(record)">
<span class="delete"></span> <span class="delete"></span>
@@ -106,6 +109,7 @@
</div> </div>
</div> </div>
</div> </div>
<!-- 上传 -->
<a-modal <a-modal
v-model:visible="bg_check" v-model:visible="bg_check"
:footer="null" :footer="null"
@@ -133,7 +137,15 @@
<span>测评标题</span> <span>测评标题</span>
</div> </div>
<div class="bg_body_input"> <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> </div>
<div class="bg_body_bt" v-if="btShow"> <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" <a-upload name="avatar" list-type="picture-card" class="avatar-uploader" :show-upload-list="false"
:headers="headers" :headers="headers"
:before-upload="beforeUpload"> :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="i_upload" v-else>
<div class="addimg"> <div class="addimg">
<div class="heng"></div> <div class="heng"></div>
@@ -162,8 +174,7 @@
<div class="bg_body_input"> <div class="bg_body_input">
<span style="color: #999ba3"> <span style="color: #999ba3">
1仅支持1个zip压缩包和pdf报告上传<br/> 1仅支持1个zip压缩包和pdf报告上传<br/>
2多个压缩包上传名称不能重复测评名称+数字大五职业性格测评01大五职业性格测评02以此类推<br/> 2单个附件命名规则测评名称+姓名+工号名称中间用英文输入法-连接例如大五职业性格测评-李玉冰-00004409.pdf
3单个附件命名规则测评名称+姓名+工号名称中间用英文输入法-连接例如大五职业性格测评-李玉冰-00004409.pdf<br/>
</span> </span>
</div> </div>
</div> </div>
@@ -220,6 +231,12 @@
</div> </div>
</div> </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="bg_footer">
<div class="btn btn6" @click="of_exit"> <div class="btn btn6" @click="of_exit">
<div class="btnText">取消</div> <div class="btnText">取消</div>
@@ -235,6 +252,7 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
<!-- 修改测评名称 -->
<a-modal <a-modal
v-model:visible="bg_edit" v-model:visible="bg_edit"
:footer="null" :footer="null"
@@ -246,14 +264,22 @@
<div class="bg_headers"></div> <div class="bg_headers"></div>
<div class="bg_main"> <div class="bg_main">
<div class="bg_main_header"> <div class="bg_main_header">
<div>测评编辑</div> <div>修改测评名称</div>
<div class="bg_main_header_close" @click="of_edit"></div> <div class="bg_main_header_close" @click="of_edit"></div>
</div> </div>
<div class="bg_body"> <div class="bg_body">
<div class="bg_body_bt" v-if="btShow"> <div class="bg_body_bt" style="align-items: flex-start;" v-if="btShow">
<div class="bg_body_bttext">测评名称</div> <div class="bg_body_bttext" style="margin-top: 5px;">测评名称</div>
<div class="bg_body_input"> <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> </div>
<div class="bg_footer"> <div class="bg_footer">
@@ -262,7 +288,7 @@
</div> </div>
<a-button <a-button
class="btn btn6" class="btn btn6"
@click="createft" @click="editUpdata"
> >
确定 确定
</a-button> </a-button>
@@ -271,6 +297,7 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
<!-- 权限 -->
<a-modal <a-modal
v-model:visible="bg_setting" v-model:visible="bg_setting"
:footer="null" :footer="null"
@@ -308,12 +335,10 @@
</div> </div>
<div class="headers_item btn"> <div class="headers_item btn">
<div class="headers_item_btn btn1"> <div class="headers_item_btn btn1">
<div class="search"></div>
<div class="btnText">搜索</div> <div class="btnText">搜索</div>
</div> </div>
<div class="headers_item_btn btn2"> <div class="headers_item_btn btn2" @click="addAuths">
<div class="search"></div> <div class="btnText">添加</div>
<div class="btnText">重置</div>
</div> </div>
</div> </div>
</div> </div>
@@ -347,7 +372,7 @@
</div> </div>
<a-button <a-button
class="btn btn6" class="btn btn6"
@click="createft" @click="settingUp"
> >
确定 确定
</a-button> </a-button>
@@ -356,6 +381,7 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
<!-- 上传结果 -->
<a-modal <a-modal
v-model:visible="bg_results" v-model:visible="bg_results"
:footer="null" :footer="null"
@@ -378,7 +404,146 @@
</div> </div>
<a-button <a-button
class="btn btn6" 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> </a-button>
@@ -396,21 +561,29 @@ import DropDown from "@/components/common/DropDown";
import {getCookieForName} from "@/api/method"; import {getCookieForName} from "@/api/method";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import dialog from "@/utils/dialog"; import dialog from "@/utils/dialog";
import NameInput from "@/components/project/NameInput";
export default { export default {
name: 'evaluationUpload', name: 'evaluationUpload',
components:{ components:{
DropDown, DropDown,
NameInput,
}, },
setup() { setup() {
const router = useRouter(); const router = useRouter();
const state = reactive({ const state = reactive({
tableLoading: false, tableLoading: false,
tableLoadingAdd: false,
tableLoadingAut: false, tableLoadingAut: false,
total: 40, total: 40,
totalAdd: 40,
params: { params: {
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
}, },
paramsAdd: {
pageNo: 1,
pageSize: 10,
},
pageSize: 10, pageSize: 10,
tableDataTotal: 40, tableDataTotal: 40,
searchParam:{ searchParam:{
@@ -419,20 +592,33 @@ import dialog from "@/utils/dialog";
status: 0, status: 0,
status2: 0, status2: 0,
}, },
formData: {
assessmentName: '',
validated: 0,
id: '',
imageUrl: '',
remarks: '',
},
bg_check: false, bg_check: false,
btShow: true, btShow: true,
imageUrl: '',
bg_edit: false, bg_edit: false,
bg_setting: false, bg_setting: false,
bg_addsetting: false,
bg_results: false, bg_results: false,
bg_remarks: false,
filesList:[{a:11}], filesList:[{a:11}],
tableData:[{ tableData:[{
id: 1, id: 1,
evaluationName:'111', evaluationName:'111',
reportReleaseNums: '22',
reportSum: '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:[ tableData1:[
{ {
@@ -440,23 +626,45 @@ import dialog from "@/utils/dialog";
jobId: '111', jobId: '111',
organDepart: 'aaaaa', organDepart: 'aaaaa',
status: 1, status: 1,
addTime: '2023-02-5' addTime: '2023-02-5',
authority: '删除',
}, },
{ {
name: '111', name: '111',
jobId: '111', jobId: '111',
organDepart: 'aaaaa', organDepart: 'aaaaa',
status: 2, 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([ // const searchStatusVal = ref([
{ value: 0, label: "全部" }, // { value: 0, label: "全部" },
{ value: 1, label: "草稿" }, // { value: 1, label: "草稿" },
{ value: 2, label: "更新待发布" }, // { value: 2, label: "更新待发布" },
{ value: 3, label: "已发布" }, // { value: 3, label: "已发布" },
]); // ]);
//分配权限
const searchStatusVal2 = ref([ const searchStatusVal2 = ref([
{ value: 0, label: "全部" }, { value: 0, label: "全部" },
{ value: 1, label: "启用" }, { value: 1, label: "启用" },
@@ -474,19 +682,32 @@ import dialog from "@/utils/dialog";
state.params.pageNo = page state.params.pageNo = page
state.params.pageSize = pageSize 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([ const columns = ref([
{ {
title: "测评名称", title: "ID",
dataIndex: "evaluationName", dataIndex: "id",
key: "evaluationName", key: "id",
className: "h", className: "h",
ellipsis: true, ellipsis: true,
width: 100, width: 100,
}, },
{ {
title: "报告发布量", title: "测评名称",
dataIndex: "reportReleaseNums", dataIndex: "evaluationName",
key: "reportReleaseNums", key: "evaluationName",
className: "h", className: "h",
ellipsis: true, ellipsis: true,
width: 100, width: 100,
@@ -500,17 +721,17 @@ import dialog from "@/utils/dialog";
width: 100, width: 100,
}, },
{ {
title: "发布状态", title: "上传日期",
dataIndex: "publishStatus", dataIndex: "uploadTime",
key: "publishStatus", key: "uploadTime",
className: "h", className: "h",
ellipsis: true, ellipsis: true,
width: 100, width: 100,
}, },
{ {
title: "上传日期", title: "备注",
dataIndex: "uploadTime", dataIndex: "remarks",
key: "uploadTime", key: "remarks",
className: "h", className: "h",
ellipsis: true, ellipsis: true,
width: 100, width: 100,
@@ -557,6 +778,14 @@ import dialog from "@/utils/dialog";
ellipsis: true, ellipsis: true,
width: 100, width: 100,
}, },
{
title: "权限",
dataIndex: "authority",
key: "authority",
className: "h",
ellipsis: true,
width: 100,
},
{ {
title: "状态", title: "状态",
dataIndex: "status", dataIndex: "status",
@@ -581,10 +810,63 @@ import dialog from "@/utils/dialog";
slots: { customRender: "action" }, 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) => { const textEnable = (record) => {
record.status = 1
console.log(record,'aaaaa') console.log(record,'aaaaa')
} }
const textDisabled = (record) => { const textDisabled = (record) => {
record.status = 2
console.log(record,'aaaa') console.log(record,'aaaa')
} }
const textDelete = (record) => { const textDelete = (record) => {
@@ -608,6 +890,7 @@ import dialog from "@/utils/dialog";
//报告上传 //报告上传
const bgupload = () => { const bgupload = () => {
state.bg_check = true; state.bg_check = true;
state.formData = {}
} }
const bgupload1 = () => { const bgupload1 = () => {
state.bg_check = true; state.bg_check = true;
@@ -617,9 +900,13 @@ import dialog from "@/utils/dialog";
state.bg_check = false; state.bg_check = false;
state.btShow = true state.btShow = true
} }
// 上传结果
const of_results = () => { const of_results = () => {
state.bg_results = false state.bg_results = false
} }
const resultsUp = () => {
state.bg_results = false
}
const tan = () => { const tan = () => {
console.log('aaa') 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 = () => { const authorityItem = () => {
state.bg_setting = true state.bg_setting = true
} }
const of_setting = () => { const of_setting = () => {
state.bg_setting = false state.bg_setting = false
} }
const editName = () => { const settingUp = () => {
state.bg_setting = false
}
// 测评
const editName = (record) => {
state.bg_edit = true state.bg_edit = true
console.log(record,'aaa')
state.formData.assessmentName = record.evaluationName
} }
const of_edit = () => { const of_edit = () => {
state.bg_edit = false 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 { return {
...toRefs(state), ...toRefs(state),
searchStatusVal, // searchStatusVal,
addAuths,
of_addsetting,
addSettingUp,
textEnableAdd,
textDeleteAdd,
searchStatusVal2, searchStatusVal2,
columns, columns,
columnsAdd,
columns2, columns2,
bgupload, bgupload,
of_exit, of_exit,
reportUpload, reportUpload,
of_results, of_results,
resultsUp,
tan, tan,
of_setting, of_setting,
settingUp,
of_edit, of_edit,
editUpdata,
// createft, // createft,
bgupload1, bgupload1,
headers, headers,
@@ -705,10 +1048,15 @@ import dialog from "@/utils/dialog";
deleteItem, deleteItem,
emptyItem, emptyItem,
editName, editName,
openRemarks,
of_remarks,
remarksUpdata,
authorityItem, authorityItem,
changePagination, changePagination,
changePaginations, changePaginations,
changePaginationsAdd,
pagination, pagination,
paginationAdd,
textDisabled, textDisabled,
textDelete, textDelete,
textEnable, textEnable,