提交修复代码
This commit is contained in:
parent
edd4707e09
commit
53a0b32b5e
|
@ -72,7 +72,7 @@ export interface SysScaleQuestionForm extends BaseEntity {
|
||||||
*/
|
*/
|
||||||
factorName?: string;
|
factorName?: string;
|
||||||
|
|
||||||
scaleAnswerList: ScaleAnswer[],
|
scaleAnswerList: any[],
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ScaleAnswer {
|
export interface ScaleAnswer {
|
||||||
|
|
|
@ -105,7 +105,7 @@ export const dynamicRoutes: RouteOption[] = [
|
||||||
permissions: ['system:user:edit'],
|
permissions: ['system:user:edit'],
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: 'role/:userId(\\d+)',
|
path: 'role/:type/:userId(\\d+)',
|
||||||
component: () => import('@/views/system/user/authRole.vue'),
|
component: () => import('@/views/system/user/authRole.vue'),
|
||||||
name: 'AuthRole',
|
name: 'AuthRole',
|
||||||
meta: { title: '分配角色', activeMenu: '/system/user', icon: '' }
|
meta: { title: '分配角色', activeMenu: '/system/user', icon: '' }
|
||||||
|
|
|
@ -136,7 +136,7 @@ async function getScalePublishList() {
|
||||||
}
|
}
|
||||||
|
|
||||||
//完成情况
|
//完成情况
|
||||||
const completePieOption = ref(initPieOption('完成情况', []))
|
const completePieOption = ref(initPieOption('', []))
|
||||||
const completeBarOption = ref(initBarOption([], []))
|
const completeBarOption = ref(initBarOption([], []))
|
||||||
const completeTable = ref([])
|
const completeTable = ref([])
|
||||||
async function getCompleteData() {
|
async function getCompleteData() {
|
||||||
|
@ -190,7 +190,7 @@ async function getCompleteData() {
|
||||||
}
|
}
|
||||||
|
|
||||||
//风险情况
|
//风险情况
|
||||||
const warnPieOption = ref(initPieOption('风险情况', []))
|
const warnPieOption = ref(initPieOption('', []))
|
||||||
const warBarOption = ref(initBarOption([], []))
|
const warBarOption = ref(initBarOption([], []))
|
||||||
const warnTable = ref([])
|
const warnTable = ref([])
|
||||||
async function getwarnData() {
|
async function getwarnData() {
|
||||||
|
@ -294,7 +294,7 @@ function initPieOption(name = '', data = []) {
|
||||||
text: name,
|
text: name,
|
||||||
subtext: '',
|
subtext: '',
|
||||||
x: 'center',
|
x: 'center',
|
||||||
y: '10',
|
y: '40',
|
||||||
textStyle: {
|
textStyle: {
|
||||||
color: '#95989D',
|
color: '#95989D',
|
||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
|
@ -310,8 +310,7 @@ function initPieOption(name = '', data = []) {
|
||||||
trigger: 'item'
|
trigger: 'item'
|
||||||
},
|
},
|
||||||
legend: {
|
legend: {
|
||||||
orient: 'vertical',
|
orient: 'horizontal',
|
||||||
left: 'left'
|
|
||||||
},
|
},
|
||||||
series: [
|
series: [
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
<template>
|
<template>
|
||||||
|
<div class="tab-container">
|
||||||
<el-tabs v-model="activeName" style="padding-left: 20px; padding-right: 20px;">
|
<el-tabs v-model="activeName" style="padding-left: 20px; padding-right: 20px;">
|
||||||
<el-tab-pane label="活动进度" name="schedule">
|
<el-tab-pane label="活动进度" name="schedule">
|
||||||
<schedule :batchNo="batchNo" :sessionName="sessionName"></schedule>
|
<schedule :batchNo="batchNo" :sessionName="sessionName"></schedule>
|
||||||
|
@ -7,20 +8,44 @@
|
||||||
<statistics :batchNo="batchNo"></statistics>
|
<statistics :batchNo="batchNo"></statistics>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
|
|
||||||
|
<div class="btn-back">
|
||||||
|
<el-button type="primary" @click="handleBack">返回</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup lang="ts">
|
||||||
import { ref } from 'vue'
|
import { ref } from 'vue'
|
||||||
import { useRoute } from 'vue-router'
|
import { useRoute } from 'vue-router'
|
||||||
|
|
||||||
import statistics from '@/views/activity/component/statistics/index.vue'
|
import statistics from '@/views/activity/component/statistics/index.vue'
|
||||||
import schedule from '@/views/activity/component/schedule/index.vue'
|
import schedule from '@/views/activity/component/schedule/index.vue'
|
||||||
|
|
||||||
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||||
|
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
const batchNo = route.params.batchNo
|
const batchNo = route.params.batchNo
|
||||||
const sessionName = route.params.sessionName
|
const sessionName = route.params.sessionName
|
||||||
|
|
||||||
const activeName = ref('schedule')
|
const activeName = ref('schedule')
|
||||||
|
|
||||||
|
const handleBack = () => {
|
||||||
|
console.log("handleBack");
|
||||||
|
const obj = { path: "/scale/SysScalePublish" };
|
||||||
|
proxy?.$tab.closeOpenPage(obj);
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped></style>
|
<style lang="scss" scoped>
|
||||||
|
.tab-container {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.btn-back {
|
||||||
|
position: absolute;
|
||||||
|
top: 5px;
|
||||||
|
right: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
|
@ -69,7 +69,8 @@
|
||||||
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||||
</el-card>
|
</el-card>
|
||||||
<!-- 添加或修改预警记录对话框 -->
|
<!-- 添加或修改预警记录对话框 -->
|
||||||
<el-dialog :title="dialog.title" v-model="dialog.visible" width="900px" append-to-body>
|
<el-dialog :title="dialog.title" v-model="dialog.visible" width="900px" append-to-body
|
||||||
|
:close-on-click-modal="false">
|
||||||
<el-tabs v-model="activeName" class="demo-tabs">
|
<el-tabs v-model="activeName" class="demo-tabs">
|
||||||
<!-- <el-tab-pane label="基本信息" name="first">
|
<!-- <el-tab-pane label="基本信息" name="first">
|
||||||
<el-form ref="informationFormRef" :model="form" :rules="rules" label-width="80px">
|
<el-form ref="informationFormRef" :model="form" :rules="rules" label-width="80px">
|
||||||
|
@ -162,7 +163,7 @@
|
||||||
<el-table-column prop="address" label="Address" />
|
<el-table-column prop="address" label="Address" />
|
||||||
</el-table>
|
</el-table>
|
||||||
</el-tab-pane> -->
|
</el-tab-pane> -->
|
||||||
<el-tab-pane label="动态普查记录" name="warn">
|
<el-tab-pane label="动态干预记录" name="warn">
|
||||||
<el-table :data="interveneList">
|
<el-table :data="interveneList">
|
||||||
<el-table-column prop="userName" label="测评人" />
|
<el-table-column prop="userName" label="测评人" />
|
||||||
<el-table-column prop="sessionName" label="场次名称" />
|
<el-table-column prop="sessionName" label="场次名称" />
|
||||||
|
@ -177,7 +178,7 @@
|
||||||
<el-table-column prop="note" label="补充说明" />
|
<el-table-column prop="note" label="补充说明" />
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tooltip content="查看测评结果" placement="top">
|
<el-tooltip content="查看详情" placement="top">
|
||||||
<el-button link type="primary" icon="View" @click="handleInterveneResult(scope.row)">查看详情</el-button>
|
<el-button link type="primary" icon="View" @click="handleInterveneResult(scope.row)">查看详情</el-button>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
|
@ -189,7 +190,7 @@
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog title="记录详情" v-model="dialogResult" width="900px" append-to-body>
|
<el-dialog title="记录详情" v-model="dialogResult" width="900px" append-to-body :close-on-click-modal="false">
|
||||||
<el-card v-for="des in currentResult">
|
<el-card v-for="des in currentResult">
|
||||||
<el-descriptions title="测评详情" :column="1">
|
<el-descriptions title="测评详情" :column="1">
|
||||||
<el-descriptions-item label="总分:">{{ des.score }}</el-descriptions-item>
|
<el-descriptions-item label="总分:">{{ des.score }}</el-descriptions-item>
|
||||||
|
@ -200,7 +201,7 @@
|
||||||
</el-card>
|
</el-card>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog title="预警干预详情" v-model="interveneResult" width="800px" append-to-body>
|
<el-dialog title="预警干预详情" v-model="interveneResult" width="800px" append-to-body :close-on-click-modal="false">
|
||||||
<el-descriptions :column="2" direction="vertical" border>
|
<el-descriptions :column="2" direction="vertical" border>
|
||||||
<el-descriptions-item label="测评人">{{ currentInterveneResult.userName }}</el-descriptions-item>
|
<el-descriptions-item label="测评人">{{ currentInterveneResult.userName }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="风险等级">{{ handleSituation(currentInterveneResult.situation)
|
<el-descriptions-item label="风险等级">{{ handleSituation(currentInterveneResult.situation)
|
||||||
|
@ -210,10 +211,16 @@
|
||||||
<el-descriptions-item label="补充说明">{{ currentInterveneResult.note }}</el-descriptions-item>
|
<el-descriptions-item label="补充说明">{{ currentInterveneResult.note }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="诊断说明">{{ currentInterveneResult.diagnose }}</el-descriptions-item>
|
<el-descriptions-item label="诊断说明">{{ currentInterveneResult.diagnose }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="诊断附件" v-if="currentInterveneResult.diagnoseAnnex">
|
<el-descriptions-item label="诊断附件" v-if="currentInterveneResult.diagnoseAnnex">
|
||||||
<el-button type="primary" text @click="downloadOss(currentInterveneResult.diagnoseAnnex)">下载附件</el-button>
|
<image-preview v-if="checkImg(currentInterveneResult.diagnoseAnnexUrl)"
|
||||||
|
:src="currentInterveneResult.diagnoseAnnexUrl" :width="50" :height="50" />
|
||||||
|
<el-button v-else type="primary" text
|
||||||
|
@click="downloadOss(currentInterveneResult.diagnoseAnnex)">下载附件</el-button>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="通知附件" v-if="currentInterveneResult.noticeAnnex">
|
<el-descriptions-item label="通知附件" v-if="currentInterveneResult.noticeAnnex">
|
||||||
<el-button type="primary" text @click="downloadOss(currentInterveneResult.noticeAnnex)">下载附件</el-button>
|
<image-preview v-if="checkImg(currentInterveneResult.noticeAnnexUrl)"
|
||||||
|
:src="currentInterveneResult.noticeAnnexUrl" :width="50" :height="50" />
|
||||||
|
<el-button v-else type="primary" text
|
||||||
|
@click="downloadOss(currentInterveneResult.noticeAnnex)">下载附件</el-button>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
@ -261,6 +268,11 @@ function handleSituation(situation: any) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const checkImg = (annex: any) => {
|
||||||
|
return /\.(jpg|jpeg|png|gif)$/.test(annex)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const initFormData: any = {
|
const initFormData: any = {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -84,7 +84,7 @@
|
||||||
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-dialog title="处理详情" v-model="dialog.visible" width="700px" append-to-body>
|
<el-dialog title="处理详情" v-model="dialog.visible" width="700px" append-to-body :close-on-click-modal="false">
|
||||||
<el-form ref="warnRecordFormRef" :model="form" :rules="rules" label-width="110px">
|
<el-form ref="warnRecordFormRef" :model="form" :rules="rules" label-width="110px">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -176,7 +176,7 @@
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog title="干预详情" v-model="listDialog" width="600px" append-to-body>
|
<el-dialog title="干预详情" v-model="listDialog" width="600px" append-to-body :close-on-click-modal="false">
|
||||||
<el-timeline style="max-width: 600px">
|
<el-timeline style="max-width: 600px">
|
||||||
<el-timeline-item :timestamp="item.time" placement="top" v-for="item in timeList" :key="item.id">
|
<el-timeline-item :timestamp="item.time" placement="top" v-for="item in timeList" :key="item.id">
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
|
@ -187,7 +187,8 @@
|
||||||
</el-timeline>
|
</el-timeline>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog :title="recordDialog.title" v-model="recordDialog.visible" width="800px" append-to-body>
|
<el-dialog :title="recordDialog.title" v-model="recordDialog.visible" width="800px" append-to-body
|
||||||
|
:close-on-click-modal="false">
|
||||||
<el-tabs v-model="activeName" class="demo-tabs">
|
<el-tabs v-model="activeName" class="demo-tabs">
|
||||||
<el-tab-pane label="静态普查记录" name="static">
|
<el-tab-pane label="静态普查记录" name="static">
|
||||||
<el-table :data="staticList" style="width: 100%">
|
<el-table :data="staticList" style="width: 100%">
|
||||||
|
@ -253,8 +254,12 @@
|
||||||
</el-card> -->
|
</el-card> -->
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog :title="publishDialog.title" v-model="publishDialog.visible" :width="700" append-to-body>
|
<el-dialog :title="publishDialog.title" v-model="publishDialog.visible" :width="700" append-to-body
|
||||||
|
:close-on-click-modal="false">
|
||||||
<el-form ref="publishFormRef" :model="publishForm" :rules="publishRules" label-width="120px">
|
<el-form ref="publishFormRef" :model="publishForm" :rules="publishRules" label-width="120px">
|
||||||
|
<el-form-item label="测评人" prop="nickName">
|
||||||
|
<el-input v-model="publishForm.nickName" disabled />
|
||||||
|
</el-form-item>
|
||||||
<el-form-item label="场次名称" prop="sessionName">
|
<el-form-item label="场次名称" prop="sessionName">
|
||||||
<el-input v-model="publishForm.sessionName" placeholder="请输入量表名称" />
|
<el-input v-model="publishForm.sessionName" placeholder="请输入量表名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
@ -520,6 +525,7 @@ const handlePublish = async (row?: any) => {
|
||||||
publishDialog.visible = true
|
publishDialog.visible = true
|
||||||
publishForm.value.userIds = [row.userId]
|
publishForm.value.userIds = [row.userId]
|
||||||
publishForm.value.publishType = 0
|
publishForm.value.publishType = 0
|
||||||
|
publishForm.value.nickName = row.nickName
|
||||||
|
|
||||||
getScaleOptions()
|
getScaleOptions()
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,8 @@
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<!-- 添加或修改预警记录对话框 -->
|
<!-- 添加或修改预警记录对话框 -->
|
||||||
<el-dialog title="记录详情" v-model="dialogDesc" width="900px" append-to-body @close="handleResultClose">
|
<el-dialog title="记录详情" v-model="dialogDesc" width="900px" append-to-body :close-on-click-modal="false"
|
||||||
|
@close="handleResultClose">
|
||||||
<el-tabs v-model="activeTab" @tab-change="handleTabChange">
|
<el-tabs v-model="activeTab" @tab-change="handleTabChange">
|
||||||
<el-tab-pane :label="item.scaleName" :name="item.recordId" v-for="item in resultList" :key="item.recordId">
|
<el-tab-pane :label="item.scaleName" :name="item.recordId" v-for="item in resultList" :key="item.recordId">
|
||||||
<el-card v-for="des in currentResult" style="margin-bottom: 10px;">
|
<el-card v-for="des in currentResult" style="margin-bottom: 10px;">
|
||||||
|
@ -76,7 +77,7 @@
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog title="补充说明" v-model="dialog.visible" width="400px" append-to-body>
|
<el-dialog title="补充说明" v-model="dialog.visible" width="400px" append-to-body :close-on-click-modal="false">
|
||||||
<el-form ref="warnRecordFormRef" :model="form" :rules="rules">
|
<el-form ref="warnRecordFormRef" :model="form" :rules="rules">
|
||||||
<el-form-item label="" prop="note">
|
<el-form-item label="" prop="note">
|
||||||
<el-input v-model="form.note" :rows="4" type="textarea" placeholder="请输入" />
|
<el-input v-model="form.note" :rows="4" type="textarea" placeholder="请输入" />
|
||||||
|
|
|
@ -1,23 +1,29 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="p-2">
|
<div class="p-2">
|
||||||
<transition :enter-active-class="proxy?.animate.searchAnimate.enter" :leave-active-class="proxy?.animate.searchAnimate.leave">
|
<transition :enter-active-class="proxy?.animate.searchAnimate.enter"
|
||||||
|
:leave-active-class="proxy?.animate.searchAnimate.leave">
|
||||||
<div class="mb-[10px]" v-show="showSearch">
|
<div class="mb-[10px]" v-show="showSearch">
|
||||||
<el-card shadow="hover">
|
<el-card shadow="hover">
|
||||||
<el-form :model="queryParams" ref="queryFormRef" :inline="true" label-width="68px">
|
<el-form :model="queryParams" ref="queryFormRef" :inline="true" label-width="68px">
|
||||||
<el-form-item label="部门id" prop="deptId">
|
<el-form-item label="部门id" prop="deptId">
|
||||||
<el-input v-model="queryParams.deptId" placeholder="请输入部门id" clearable style="width: 240px" @keyup.enter="handleQuery" />
|
<el-input v-model="queryParams.deptId" placeholder="请输入部门id" clearable style="width: 240px"
|
||||||
|
@keyup.enter="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="用户id" prop="userId">
|
<el-form-item label="用户id" prop="userId">
|
||||||
<el-input v-model="queryParams.userId" placeholder="请输入用户id" clearable style="width: 240px" @keyup.enter="handleQuery" />
|
<el-input v-model="queryParams.userId" placeholder="请输入用户id" clearable style="width: 240px"
|
||||||
|
@keyup.enter="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="排序号" prop="orderNum">
|
<el-form-item label="排序号" prop="orderNum">
|
||||||
<el-input v-model="queryParams.orderNum" placeholder="请输入排序号" clearable style="width: 240px" @keyup.enter="handleQuery" />
|
<el-input v-model="queryParams.orderNum" placeholder="请输入排序号" clearable style="width: 240px"
|
||||||
|
@keyup.enter="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="key键" prop="testKey">
|
<el-form-item label="key键" prop="testKey">
|
||||||
<el-input v-model="queryParams.testKey" placeholder="请输入key键" clearable style="width: 240px" @keyup.enter="handleQuery" />
|
<el-input v-model="queryParams.testKey" placeholder="请输入key键" clearable style="width: 240px"
|
||||||
|
@keyup.enter="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="值" prop="value">
|
<el-form-item label="值" prop="value">
|
||||||
<el-input v-model="queryParams.value" placeholder="请输入值" clearable style="width: 240px" @keyup.enter="handleQuery" />
|
<el-input v-model="queryParams.value" placeholder="请输入值" clearable style="width: 240px"
|
||||||
|
@keyup.enter="handleQuery" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
|
||||||
|
@ -35,15 +41,16 @@
|
||||||
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['demo:demo:add']">新增</el-button>
|
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['demo:demo:add']">新增</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['demo:demo:edit']">修改</el-button>
|
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()"
|
||||||
|
v-hasPermi="['demo:demo:edit']">修改</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['demo:demo:remove']"
|
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()"
|
||||||
>删除</el-button
|
v-hasPermi="['demo:demo:remove']">删除</el-button>
|
||||||
>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="1.5">
|
<el-col :span="1.5">
|
||||||
<el-button type="warning" plain icon="Download" @click="handleExport" v-hasPermi="['demo:demo:export']">导出</el-button>
|
<el-button type="warning" plain icon="Download" @click="handleExport"
|
||||||
|
v-hasPermi="['demo:demo:export']">导出</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
|
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
@ -60,19 +67,23 @@
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tooltip content="修改" placement="top">
|
<el-tooltip content="修改" placement="top">
|
||||||
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['demo:demo:edit']"></el-button>
|
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)"
|
||||||
|
v-hasPermi="['demo:demo:edit']"></el-button>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
<el-tooltip content="删除" placement="top">
|
<el-tooltip content="删除" placement="top">
|
||||||
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['demo:demo:remove']"></el-button>
|
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)"
|
||||||
|
v-hasPermi="['demo:demo:remove']"></el-button>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
|
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
||||||
|
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||||
</el-card>
|
</el-card>
|
||||||
<!-- 添加或修改测试单对话框 -->
|
<!-- 添加或修改测试单对话框 -->
|
||||||
<el-dialog :title="dialog.title" v-model="dialog.visible" width="500px" append-to-body>
|
<el-dialog :title="dialog.title" v-model="dialog.visible" width="500px" append-to-body
|
||||||
|
:close-on-click-modal="false">
|
||||||
<el-form ref="demoFormRef" :model="form" :rules="rules" label-width="80px">
|
<el-form ref="demoFormRef" :model="form" :rules="rules" label-width="80px">
|
||||||
<el-form-item label="部门id" prop="deptId">
|
<el-form-item label="部门id" prop="deptId">
|
||||||
<el-input v-model="form.deptId" placeholder="请输入部门id" />
|
<el-input v-model="form.deptId" placeholder="请输入部门id" />
|
||||||
|
|
|
@ -133,7 +133,8 @@
|
||||||
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||||
</el-card>
|
</el-card>
|
||||||
<!-- 添加或修改心理测评量对话框 -->
|
<!-- 添加或修改心理测评量对话框 -->
|
||||||
<el-dialog :title="dialog.title" v-model="dialog.visible" width="800px" append-to-body>
|
<el-dialog :title="dialog.title" v-model="dialog.visible" width="800px" append-to-body
|
||||||
|
:close-on-click-modal="false">
|
||||||
<el-form ref="SysScaleFormRef" :model="form" :rules="rules" label-width="110px">
|
<el-form ref="SysScaleFormRef" :model="form" :rules="rules" label-width="110px">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -188,7 +189,7 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="题量" prop="questionsNum">
|
<el-form-item label="题量" prop="questionsNum">
|
||||||
<el-input-number v-model="form.questionsNum" :min="1" placeholder="请输入测评时间" class="w-100" />
|
<el-input-number v-model="form.questionsNum" :min="1" placeholder="请输入题量" class="w-100" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
|
@ -64,7 +64,8 @@
|
||||||
</el-table>
|
</el-table>
|
||||||
</el-card>
|
</el-card>
|
||||||
<!-- 添加或修改测评因子对话框 -->
|
<!-- 添加或修改测评因子对话框 -->
|
||||||
<el-dialog :title="dialog.title" v-model="dialog.visible" width="1300px" append-to-body>
|
<el-dialog :title="dialog.title" v-model="dialog.visible" width="1300px" append-to-body
|
||||||
|
:close-on-click-modal="false">
|
||||||
<el-form ref="SysScaleFactorFormRef" :model="form" :rules="rules" label-width="150px">
|
<el-form ref="SysScaleFactorFormRef" :model="form" :rules="rules" label-width="150px">
|
||||||
<el-card>
|
<el-card>
|
||||||
<template #header>
|
<template #header>
|
||||||
|
|
|
@ -77,7 +77,7 @@
|
||||||
<el-tag v-else-if="scope.row.dimensionType === 2" type="primary">多项多维型</el-tag>
|
<el-tag v-else-if="scope.row.dimensionType === 2" type="primary">多项多维型</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="布布次数" align="center" prop="publishNums" />
|
<el-table-column label="发布次数" align="center" prop="publishNums" />
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-tooltip content="查看量表详情" placement="top">
|
<el-tooltip content="查看量表详情" placement="top">
|
||||||
|
@ -155,7 +155,7 @@
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog title="查看量表试卷详情" v-model="detailVisible" width="800px" append-to-body>
|
<el-dialog title="查看量表详情" v-model="detailVisible" width="800px" append-to-body>
|
||||||
<el-tabs v-model="activeName" type="card">
|
<el-tabs v-model="activeName" type="card">
|
||||||
<el-tab-pane v-for="item in factorList" :label="item.factorName" :name="item.factorName" :key="item.factorId">
|
<el-tab-pane v-for="item in factorList" :label="item.factorName" :name="item.factorName" :key="item.factorId">
|
||||||
<p v-for="q in item.questionList" :key="q.questionId">
|
<p v-for="q in item.questionList" :key="q.questionId">
|
||||||
|
|
|
@ -73,7 +73,8 @@
|
||||||
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||||
</el-card>
|
</el-card>
|
||||||
<!-- 添加或修改量问题内容对话框 -->
|
<!-- 添加或修改量问题内容对话框 -->
|
||||||
<el-dialog :title="dialog.title" v-model="dialog.visible" width="800px" append-to-body>
|
<el-dialog :title="dialog.title" v-model="dialog.visible" width="850px" append-to-body
|
||||||
|
:close-on-click-modal="false">
|
||||||
<el-form ref="SysScaleQuestionFormRef" :model="form" :rules="rules" label-width="120px">
|
<el-form ref="SysScaleQuestionFormRef" :model="form" :rules="rules" label-width="120px">
|
||||||
<el-card>
|
<el-card>
|
||||||
<template #header>
|
<template #header>
|
||||||
|
@ -115,12 +116,17 @@
|
||||||
<el-table-column prop="answerOption" label="选项内容">
|
<el-table-column prop="answerOption" label="选项内容">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<image-upload v-if="scope.row.type === 1" v-model="scope.row.answerOption" :limit="1" />
|
<image-upload v-if="scope.row.type === 1" v-model="scope.row.answerOption" :limit="1" />
|
||||||
<el-input v-else v-model="scope.row.answerOption" placeholder="请输入选项内容" />
|
<el-input v-else v-model="scope.row.answerOption" placeholder="请输入" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="score" label="分值">
|
<el-table-column prop="score" label="分值" width="160">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-input-number v-model="scope.row.score" placeholder="请输入分值" />
|
<el-input-number v-model="scope.row.score" placeholder="请输入" />
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="scoreType" label="得分类型" width="120">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-input v-model="scope.row.scoreType" placeholder="选填" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
|
@ -235,7 +241,6 @@ const data = reactive<PageData<SysScaleQuestionForm, SysScaleQuestionQuery>>({
|
||||||
|
|
||||||
const { queryParams, form, rules } = toRefs(data);
|
const { queryParams, form, rules } = toRefs(data);
|
||||||
|
|
||||||
|
|
||||||
/** 查询量问题内容列表 */
|
/** 查询量问题内容列表 */
|
||||||
const getList = async () => {
|
const getList = async () => {
|
||||||
loading.value = true;
|
loading.value = true;
|
||||||
|
@ -295,7 +300,7 @@ const handleUpdate = async (row?: SysScaleQuestionVO) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
function addQuestion() {
|
function addQuestion() {
|
||||||
form.value.scaleAnswerList.push({ answerId: nanoid(), answerOption: '', score: 0, type: 0 })
|
form.value.scaleAnswerList.push({ answerId: nanoid(), answerOption: '', score: 0, type: 0, scoreType: '' })
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleOptionDelete(row: any) {
|
function handleOptionDelete(row: any) {
|
||||||
|
|
|
@ -460,7 +460,7 @@ const handleStatusChange = async (row: UserVO) => {
|
||||||
/** 跳转角色分配 */
|
/** 跳转角色分配 */
|
||||||
const handleAuthRole = (row: UserVO) => {
|
const handleAuthRole = (row: UserVO) => {
|
||||||
const userId = row.userId;
|
const userId = row.userId;
|
||||||
router.push("/system/user-auth/role/" + userId);
|
router.push(`/system/user-auth/role/teacher/${userId}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 重置密码按钮操作 */
|
/** 重置密码按钮操作 */
|
||||||
|
|
|
@ -20,14 +20,8 @@
|
||||||
<div class="panel">
|
<div class="panel">
|
||||||
<h4 class="panel-title">角色信息</h4>
|
<h4 class="panel-title">角色信息</h4>
|
||||||
<div>
|
<div>
|
||||||
<el-table
|
<el-table v-loading="loading" :row-key="getRowKey" @row-click="clickRow" ref="tableRef"
|
||||||
v-loading="loading"
|
@selection-change="handleSelectionChange" :data="roles.slice((pageNum - 1) * pageSize, pageNum * pageSize)">
|
||||||
:row-key="getRowKey"
|
|
||||||
@row-click="clickRow"
|
|
||||||
ref="tableRef"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
:data="roles.slice((pageNum - 1) * pageSize, pageNum * pageSize)"
|
|
||||||
>
|
|
||||||
<el-table-column label="序号" width="55" type="index" align="center">
|
<el-table-column label="序号" width="55" type="index" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ (pageNum - 1) * pageSize + scope.$index + 1 }}</span>
|
<span>{{ (pageNum - 1) * pageSize + scope.$index + 1 }}</span>
|
||||||
|
@ -60,6 +54,7 @@ import { getAuthRole, updateAuthRole } from "@/api/system/user";
|
||||||
import { UserForm } from "@/api/system/user/types";
|
import { UserForm } from "@/api/system/user/types";
|
||||||
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
|
console.log('route', route)
|
||||||
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||||
|
|
||||||
const loading = ref(true);
|
const loading = ref(true);
|
||||||
|
@ -91,8 +86,15 @@ const getRowKey = (row: RoleVO): string => {
|
||||||
};
|
};
|
||||||
/** 关闭按钮 */
|
/** 关闭按钮 */
|
||||||
const close = () => {
|
const close = () => {
|
||||||
|
if (route.params.type == 'student') {
|
||||||
const obj = { path: "/system/user" };
|
const obj = { path: "/system/user" };
|
||||||
proxy?.$tab.closeOpenPage(obj);
|
proxy?.$tab.closeOpenPage(obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (route.params.type == 'teacher') {
|
||||||
|
const obj = { path: "/system/teacher" };
|
||||||
|
proxy?.$tab.closeOpenPage(obj);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
/** 提交按钮 */
|
/** 提交按钮 */
|
||||||
const submitForm = async () => {
|
const submitForm = async () => {
|
||||||
|
|
|
@ -454,7 +454,7 @@ const handleStatusChange = async (row: UserVO) => {
|
||||||
/** 跳转角色分配 */
|
/** 跳转角色分配 */
|
||||||
const handleAuthRole = (row: UserVO) => {
|
const handleAuthRole = (row: UserVO) => {
|
||||||
const userId = row.userId;
|
const userId = row.userId;
|
||||||
router.push("/system/user-auth/role/" + userId);
|
router.push(`/system/user-auth/role/student/${userId}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 重置密码按钮操作 */
|
/** 重置密码按钮操作 */
|
||||||
|
|
Loading…
Reference in New Issue