|
|
|
@ -1,28 +1,20 @@ |
|
|
|
|
<template> |
|
|
|
|
<div ref="main" |
|
|
|
|
class="main" |
|
|
|
|
v-loading="loading"> |
|
|
|
|
<div ref="main" class="main" v-loading="loading"> |
|
|
|
|
<el-row :gutter="20"> |
|
|
|
|
<el-col :span="24"> |
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="mgb20"> |
|
|
|
|
<el-card shadow="hover" class="mgb20"> |
|
|
|
|
<div class="flex-between"> |
|
|
|
|
<el-page-header @back="back" |
|
|
|
|
content="项目配置"></el-page-header> |
|
|
|
|
<el-page-header @back="back" content="项目配置"></el-page-header> |
|
|
|
|
<div v-if="!isDetail"> |
|
|
|
|
<el-button type="success" |
|
|
|
|
:loading="submiting === 0" |
|
|
|
|
@click="handleSubmit(0,projectManage.isOpen=1,projectManage.ztOpen = 1)">保存为草稿 |
|
|
|
|
<el-button type="success" :loading="submiting === 0" |
|
|
|
|
@click="handleSubmit(0, projectManage.isOpen = 1, projectManage.ztOpen = 1)">保存为草稿 |
|
|
|
|
</el-button> |
|
|
|
|
<el-button type="primary" |
|
|
|
|
:loading="submiting === 1" |
|
|
|
|
@click="handleSubmit(1)">确定并发布</el-button> |
|
|
|
|
<el-button type="primary" :loading="submiting === 1" @click="handleSubmit(1)">确定并发布</el-button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</el-card> |
|
|
|
|
|
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="mgb20"> |
|
|
|
|
<el-card shadow="hover" class="mgb20"> |
|
|
|
|
<div class="flex-center mgb20"> |
|
|
|
|
<p class="addhr_tag"></p> |
|
|
|
|
<span>课程信息</span> |
|
|
|
@ -33,26 +25,18 @@ |
|
|
|
|
<el-form label-width="80px"> |
|
|
|
|
<div style="display: flex"> |
|
|
|
|
<el-form-item label="项目名称"> |
|
|
|
|
<el-input :disabled="isDetail" |
|
|
|
|
v-model.trim="projectManage.projectName" |
|
|
|
|
placeholder="20个字符以内" |
|
|
|
|
@blur="projectNameExistis"></el-input> |
|
|
|
|
<el-input :disabled="isDetail" v-model.trim="projectManage.projectName" placeholder="20个字符以内" |
|
|
|
|
@blur="projectNameExistis"></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="备注"> |
|
|
|
|
<el-input v-model.trim="projectManage.remark" |
|
|
|
|
placeholder="20个字符以内"></el-input> |
|
|
|
|
<el-input v-model.trim="projectManage.remark" placeholder="20个字符以内"></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="项目用途"> |
|
|
|
|
<el-select :disabled="isDetail" |
|
|
|
|
v-model="projectManage.permissions" |
|
|
|
|
placeholder="请选择" |
|
|
|
|
@change="permissionChange"> |
|
|
|
|
<el-option label="练习" |
|
|
|
|
:value="0"></el-option> |
|
|
|
|
<el-option label="考核" |
|
|
|
|
:value="1"></el-option> |
|
|
|
|
<el-option label="竞赛" |
|
|
|
|
:value="2"></el-option> |
|
|
|
|
<el-select :disabled="isDetail" v-model="projectManage.permissions" placeholder="请选择" |
|
|
|
|
@change="permissionChange"> |
|
|
|
|
<el-option label="练习" :value="0"></el-option> |
|
|
|
|
<el-option label="考核" :value="1"></el-option> |
|
|
|
|
<el-option label="竞赛" :value="2"></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
</div> |
|
|
|
@ -60,8 +44,7 @@ |
|
|
|
|
</div> |
|
|
|
|
</el-card> |
|
|
|
|
|
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="mgb20"> |
|
|
|
|
<el-card shadow="hover" class="mgb20"> |
|
|
|
|
<div class="flex-center mgb20"> |
|
|
|
|
<p class="addhr_tag"></p> |
|
|
|
|
<span>实验目标</span> |
|
|
|
@ -70,20 +53,14 @@ |
|
|
|
|
<div> |
|
|
|
|
<el-form label-width="0"> |
|
|
|
|
<el-form-item> |
|
|
|
|
<quill :border="true" |
|
|
|
|
:readonly="isDetail" |
|
|
|
|
v-model="projectManage.experimentTarget" |
|
|
|
|
:type.sync="projectManage.experimentTargetType" |
|
|
|
|
radio |
|
|
|
|
:minHeight="150" |
|
|
|
|
:height="150" /> |
|
|
|
|
<quill :border="true" :readonly="isDetail" v-model="projectManage.experimentTarget" |
|
|
|
|
:type.sync="projectManage.experimentTargetType" radio :minHeight="150" :height="150" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
</div> |
|
|
|
|
</el-card> |
|
|
|
|
|
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="mgb20"> |
|
|
|
|
<el-card shadow="hover" class="mgb20"> |
|
|
|
|
<div class="flex-center mgb20"> |
|
|
|
|
<p class="addhr_tag"></p> |
|
|
|
|
<span>项目背景</span> |
|
|
|
@ -92,30 +69,22 @@ |
|
|
|
|
<div> |
|
|
|
|
<el-form label-width="0"> |
|
|
|
|
<el-form-item> |
|
|
|
|
<quill :border="true" |
|
|
|
|
:readonly="isDetail" |
|
|
|
|
v-model="projectManage.experimentDescription" |
|
|
|
|
:type.sync="projectManage.experimentDescriptionType" |
|
|
|
|
radio |
|
|
|
|
:minHeight="150" |
|
|
|
|
:height="150" |
|
|
|
|
:index="1" /> |
|
|
|
|
<quill :border="true" :readonly="isDetail" v-model="projectManage.experimentDescription" |
|
|
|
|
:type.sync="projectManage.experimentDescriptionType" radio :minHeight="150" :height="150" |
|
|
|
|
:index="1" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
</div> |
|
|
|
|
</el-card> |
|
|
|
|
|
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="mgb20"> |
|
|
|
|
<el-card shadow="hover" class="mgb20"> |
|
|
|
|
<div class="flex-between mgb20"> |
|
|
|
|
<div class="flex-center"> |
|
|
|
|
<p class="addhr_tag"></p> |
|
|
|
|
<span>实验任务</span> |
|
|
|
|
</div> |
|
|
|
|
<div> |
|
|
|
|
<el-button :disabled="isDetail" |
|
|
|
|
type="primary" |
|
|
|
|
@click="toJudgePoint('home')">进入判分点 |
|
|
|
|
<el-button :disabled="isDetail" type="primary" @click="toJudgePoint('home')">进入判分点 |
|
|
|
|
</el-button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
@ -123,120 +92,67 @@ |
|
|
|
|
|
|
|
|
|
<div class="mgb20 flex-between"> |
|
|
|
|
<div class="flex-center"> |
|
|
|
|
<div class="m-r-20" |
|
|
|
|
style="color: #f00">项目总分值:100分</div> |
|
|
|
|
<div class="m-r-20" style="color: #f00">项目总分值:100分</div> |
|
|
|
|
<!-- <div>权重 <div class="dib"><el-input></el-input></div></div> --> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<div> |
|
|
|
|
<el-button :disabled="isDetail" |
|
|
|
|
class="m-r-20" |
|
|
|
|
type="text" |
|
|
|
|
@click="avgDistributionScore"> |
|
|
|
|
<el-button :disabled="isDetail" class="m-r-20" type="text" @click="avgDistributionScore"> |
|
|
|
|
平均分配分值 |
|
|
|
|
</el-button> |
|
|
|
|
<el-button :disabled="isDetail" |
|
|
|
|
class="m-r-20" |
|
|
|
|
type="text" |
|
|
|
|
@click="manualDistributionScore"> |
|
|
|
|
<el-button :disabled="isDetail" class="m-r-20" type="text" @click="manualDistributionScore"> |
|
|
|
|
手动分配分值 |
|
|
|
|
</el-button> |
|
|
|
|
<span>(待分配分值: {{ handDistributionScore }}/100分)</span> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<el-button :disabled="isDetail" |
|
|
|
|
type="primary" |
|
|
|
|
icon="el-icon-plus" |
|
|
|
|
round |
|
|
|
|
@click="handleAddJudgment" |
|
|
|
|
style="margin-bottom: 10px">判分点 |
|
|
|
|
<el-button :disabled="isDetail" type="primary" icon="el-icon-plus" round @click="handleAddJudgment" |
|
|
|
|
style="margin-bottom: 10px">判分点 |
|
|
|
|
</el-button> |
|
|
|
|
<el-button :disabled="isDetail" |
|
|
|
|
type="primary" |
|
|
|
|
icon="el-icon-delete" |
|
|
|
|
round |
|
|
|
|
@click="batchDeleteProjectJudgment" |
|
|
|
|
style="margin-bottom: 10px">批量删除 |
|
|
|
|
<el-button :disabled="isDetail" type="primary" icon="el-icon-delete" round @click="batchDeleteProjectJudgment" |
|
|
|
|
style="margin-bottom: 10px">批量删除 |
|
|
|
|
</el-button> |
|
|
|
|
<div class="draggable"> |
|
|
|
|
<u-table ref="projectJudgementTable" |
|
|
|
|
:data="projectJudgmentData" |
|
|
|
|
class="table" |
|
|
|
|
stripe |
|
|
|
|
header-align="center" |
|
|
|
|
:use-virtual="isLc" |
|
|
|
|
:max-height="600" |
|
|
|
|
:row-height="60" |
|
|
|
|
:border="false" |
|
|
|
|
@selection-change="handleSelectionProjectJudgment" |
|
|
|
|
row-key="judgmentId" |
|
|
|
|
v-loading="listLoading"> |
|
|
|
|
<u-table-column type="selection" |
|
|
|
|
width="55" |
|
|
|
|
align="center"></u-table-column> |
|
|
|
|
<u-table-column prop="sort" |
|
|
|
|
label="序号" |
|
|
|
|
width="80" |
|
|
|
|
align="center"> |
|
|
|
|
<el-table ref="projectJudgementTable" :data="projectJudgmentData" class="table" stripe header-align="center" |
|
|
|
|
:use-virtual="isLc" :max-height="600" :row-height="60" :border="false" |
|
|
|
|
@selection-change="handleSelectionProjectJudgment" row-key="judgmentId" v-loading="listLoading"> |
|
|
|
|
<el-table-column type="selection" width="55" align="center"></el-table-column> |
|
|
|
|
<el-table-column prop="sort" label="序号" width="80" align="center"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
{{ scope.row.sort }} |
|
|
|
|
</template> |
|
|
|
|
</u-table-column> |
|
|
|
|
<u-table-column prop="name" |
|
|
|
|
label="判分指标" |
|
|
|
|
align="center" |
|
|
|
|
show-overflow-tooltip |
|
|
|
|
min-width="140"></u-table-column> |
|
|
|
|
<u-table-column prop="name" |
|
|
|
|
label="判分点名称" |
|
|
|
|
align="center" |
|
|
|
|
show-overflow-tooltip |
|
|
|
|
min-width="140"></u-table-column> |
|
|
|
|
<u-table-column label="实验要求" |
|
|
|
|
align="center" |
|
|
|
|
width="600"> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="name" label="判分指标" align="center" show-overflow-tooltip |
|
|
|
|
min-width="140"></el-table-column> |
|
|
|
|
<el-table-column prop="name" label="判分点名称" align="center" show-overflow-tooltip |
|
|
|
|
min-width="140"></el-table-column> |
|
|
|
|
<el-table-column label="实验要求" align="center" width="600"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<quill :readonly="true" |
|
|
|
|
elseRead="true" |
|
|
|
|
v-model="scope.row.experimentalRequirements" |
|
|
|
|
:index="2" /> |
|
|
|
|
<quill :readonly="true" elseRead="true" v-model="scope.row.experimentalRequirements" :index="2" /> |
|
|
|
|
</template> |
|
|
|
|
</u-table-column> |
|
|
|
|
<u-table-column prop="score" |
|
|
|
|
label="分数" |
|
|
|
|
align="center" |
|
|
|
|
width="120"> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="score" label="分数" align="center" width="120"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-input :disabled="isDetail" |
|
|
|
|
:key="scope.$index" |
|
|
|
|
type="number" |
|
|
|
|
step="0.1" |
|
|
|
|
v-model.trim="scope.row.score"></el-input> |
|
|
|
|
<el-input :disabled="isDetail" :key="scope.$index" type="number" step="0.1" |
|
|
|
|
v-model.trim="scope.row.score"></el-input> |
|
|
|
|
<!-- |
|
|
|
|
@input="scoreChange(scope.row, scope.$index)" --> |
|
|
|
|
</template> |
|
|
|
|
</u-table-column> |
|
|
|
|
<u-table-column label="操作" |
|
|
|
|
width="140" |
|
|
|
|
align="center"> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column label="操作" width="140" align="center"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-button :disabled="isDetail" |
|
|
|
|
type="text" |
|
|
|
|
style="margin-right: 10px" |
|
|
|
|
@click="toJudgePoint('edit', scope.row)">自定义</el-button> |
|
|
|
|
<el-button :disabled="isDetail" |
|
|
|
|
type="text" |
|
|
|
|
@click="delJudgePoint(scope.$index)"> |
|
|
|
|
<el-button :disabled="isDetail" type="text" style="margin-right: 10px" |
|
|
|
|
@click="toJudgePoint('edit', scope.row)">自定义</el-button> |
|
|
|
|
<el-button :disabled="isDetail" type="text" @click="delJudgePoint(scope.$index)"> |
|
|
|
|
删除 |
|
|
|
|
</el-button> |
|
|
|
|
</template> |
|
|
|
|
</u-table-column> |
|
|
|
|
</u-table> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
</div> |
|
|
|
|
</el-card> |
|
|
|
|
|
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="mgb20"> |
|
|
|
|
<el-card shadow="hover" class="mgb20"> |
|
|
|
|
<div class="flex-between mgb20"> |
|
|
|
|
<div class="flex-center"> |
|
|
|
|
<p class="addhr_tag"></p> |
|
|
|
@ -244,25 +160,16 @@ |
|
|
|
|
</div> |
|
|
|
|
<div> |
|
|
|
|
启用 |
|
|
|
|
<el-switch :disabled="isDetail" |
|
|
|
|
:active-value="0" |
|
|
|
|
:inactive-value="1" |
|
|
|
|
v-model="projectManage.hintOpen"></el-switch> |
|
|
|
|
<el-switch :disabled="isDetail" :active-value="0" :inactive-value="1" |
|
|
|
|
v-model="projectManage.hintOpen"></el-switch> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="border-b-dashed"></div> |
|
|
|
|
<div> |
|
|
|
|
<el-form label-width="0"> |
|
|
|
|
<el-form-item prop="tips" |
|
|
|
|
label=""> |
|
|
|
|
<quill :border="true" |
|
|
|
|
:readonly="isDetail" |
|
|
|
|
v-model="projectManage.experimentHint" |
|
|
|
|
:type.sync="projectManage.experimentHintType" |
|
|
|
|
radio |
|
|
|
|
:minHeight="150" |
|
|
|
|
:height="400" |
|
|
|
|
:index="3" /> |
|
|
|
|
<el-form-item prop="tips" label=""> |
|
|
|
|
<quill :border="true" :readonly="isDetail" v-model="projectManage.experimentHint" |
|
|
|
|
:type.sync="projectManage.experimentHintType" radio :minHeight="150" :height="400" :index="3" /> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
</div> |
|
|
|
@ -271,62 +178,34 @@ |
|
|
|
|
</el-row> |
|
|
|
|
|
|
|
|
|
<!--选择判分点对话框--> |
|
|
|
|
<el-dialog title="添加判分点" |
|
|
|
|
:visible.sync="dialogVisible" |
|
|
|
|
width="40%" |
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
@close="closeJudgment"> |
|
|
|
|
<el-dialog title="添加判分点" :visible.sync="dialogVisible" width="40%" :close-on-click-modal="false" |
|
|
|
|
@close="closeJudgment"> |
|
|
|
|
<div class="text-right mgb10"> |
|
|
|
|
<div> |
|
|
|
|
<el-input placeholder="请输入需要查找的判分点" |
|
|
|
|
prefix-icon="el-icon-search" |
|
|
|
|
v-model.trim="judgementpointsquery" |
|
|
|
|
clearable></el-input> |
|
|
|
|
<el-input placeholder="请输入需要查找的判分点" prefix-icon="el-icon-search" v-model.trim="judgementpointsquery" |
|
|
|
|
clearable></el-input> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<u-table v-loading="visibleLoading" |
|
|
|
|
:data="judgementData" |
|
|
|
|
ref="judgementTable" |
|
|
|
|
class="table" |
|
|
|
|
stripe |
|
|
|
|
header-align="center" |
|
|
|
|
use-virtual |
|
|
|
|
:row-height="45" |
|
|
|
|
:max-height="400" |
|
|
|
|
:border="false" |
|
|
|
|
@selection-change="handleSelectionJudgment" |
|
|
|
|
:row-key="rowKey"> |
|
|
|
|
<u-table-column type="selection" |
|
|
|
|
width="55" |
|
|
|
|
align="center" |
|
|
|
|
:reserve-selection="true"></u-table-column> |
|
|
|
|
<u-table-column prop="id" |
|
|
|
|
label="序号" |
|
|
|
|
align="center" |
|
|
|
|
width="100"> |
|
|
|
|
<el-table v-loading="visibleLoading" :data="judgementData" ref="judgementTable" class="table" stripe |
|
|
|
|
header-align="center" use-virtual :row-height="45" :max-height="400" :border="false" |
|
|
|
|
@selection-change="handleSelectionJudgment" :row-key="rowKey"> |
|
|
|
|
<el-table-column type="selection" width="55" align="center" :reserve-selection="true"></el-table-column> |
|
|
|
|
<el-table-column prop="id" label="序号" align="center" width="100"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
{{ scope.$index + 1 }} |
|
|
|
|
</template> |
|
|
|
|
</u-table-column> |
|
|
|
|
<u-table-column prop="name" |
|
|
|
|
label="判分点名称" |
|
|
|
|
align="center"></u-table-column> |
|
|
|
|
<u-table-column label="操作" |
|
|
|
|
align="center" |
|
|
|
|
width="100"> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="name" label="判分点名称" align="center"></el-table-column> |
|
|
|
|
<el-table-column label="操作" align="center" width="100"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-button size="mini" |
|
|
|
|
@click="toJudgePoint('view', scope.row)">查看</el-button> |
|
|
|
|
<el-button size="mini" @click="toJudgePoint('view', scope.row)">查看</el-button> |
|
|
|
|
</template> |
|
|
|
|
</u-table-column> |
|
|
|
|
</u-table> |
|
|
|
|
<div slot="footer" |
|
|
|
|
class="dialog-footer"> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
<div slot="footer" class="dialog-footer"> |
|
|
|
|
<el-button @click="closeJudgment">取 消</el-button> |
|
|
|
|
<el-button type="primary" |
|
|
|
|
:loading="savingJud" |
|
|
|
|
@click="saveJudgment">确 定</el-button> |
|
|
|
|
<el-button type="primary" :loading="savingJud" @click="saveJudgment">确 定</el-button> |
|
|
|
|
</div> |
|
|
|
|
</el-dialog> |
|
|
|
|
</div> |
|
|
|
@ -440,6 +319,8 @@ export default { |
|
|
|
|
if (this.$route.query.projectId) { |
|
|
|
|
this.projectId = this.$route.query.projectId; |
|
|
|
|
this.getInfoData(); |
|
|
|
|
} else { |
|
|
|
|
this.rowDrop() |
|
|
|
|
} |
|
|
|
|
// 判断有没有缓存数据 |
|
|
|
|
if (JSON.stringify(this.projectFields) != "{}") { |
|
|
|
@ -447,7 +328,6 @@ export default { |
|
|
|
|
this.projectManage = projectManage; |
|
|
|
|
this.projectJudgmentData = projectJudgmentData; |
|
|
|
|
} |
|
|
|
|
this.rowDrop(); |
|
|
|
|
this.$refs.main.scrollTop = 0; |
|
|
|
|
}, |
|
|
|
|
beforeDestroy () { |
|
|
|
@ -482,6 +362,7 @@ export default { |
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
this.updateTime = 0 |
|
|
|
|
this.$refs.main.scrollTop = 0; |
|
|
|
|
this.rowDrop(); |
|
|
|
|
}); |
|
|
|
|
}).catch(err => { |
|
|
|
|
this.loading = false |
|
|
|
@ -785,24 +666,16 @@ export default { |
|
|
|
|
// 行拖拽 |
|
|
|
|
rowDrop () { |
|
|
|
|
// 此时找到的元素是要拖拽元素的父容器 |
|
|
|
|
const tbody = document.querySelector(".draggable .el-table__body-wrapper tbody"); |
|
|
|
|
const _this = this; |
|
|
|
|
Sortable.create(tbody, { |
|
|
|
|
const tbody = document.querySelector(".el-table__body tbody"); |
|
|
|
|
const that = this; |
|
|
|
|
this.$refs.projectJudgementTable && Sortable.create(tbody, { |
|
|
|
|
// 指定父元素下可被拖拽的子元素 |
|
|
|
|
draggable: ".draggable .el-table__row", |
|
|
|
|
onEnd ({ newIndex, oldIndex }) { |
|
|
|
|
// 解决拖拽数据不变化的问题:在改变了数据之后 先用一个变量深拷贝这个数据,然后把这个数据清空,最后再在vue的$nextTick函数里面重新给那个数据赋值 |
|
|
|
|
_this.projectJudgmentData.splice(newIndex, 0, _this.projectJudgmentData.splice(oldIndex, 1)[0]); |
|
|
|
|
let newArray = _this.projectJudgmentData.slice(0); |
|
|
|
|
_this.projectJudgmentData = []; |
|
|
|
|
_this.$nextTick(function () { |
|
|
|
|
newArray.forEach((e, i) => { |
|
|
|
|
_this.$set(e, "sort", i + 1);// 不更新 |
|
|
|
|
_this.$set(e, "name", e.name + "?"); |
|
|
|
|
_this.$set(e, "name", e.name.slice(0, e.name.length - 1)); // 不更新的解决方案 |
|
|
|
|
}); |
|
|
|
|
_this.projectJudgmentData = newArray; |
|
|
|
|
}); |
|
|
|
|
// draggable: ".draggable .el-table__row", |
|
|
|
|
onUpdate ({ newIndex, oldIndex }) { |
|
|
|
|
console.log("🚀 ~ onEnd ~ newIndex, oldIndex:", newIndex, oldIndex) |
|
|
|
|
if (newIndex == oldIndex) return false |
|
|
|
|
const currentRow = that.projectJudgmentData.splice(oldIndex, 1)[0] |
|
|
|
|
that.projectJudgmentData.splice(newIndex, 0, currentRow) |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
@ -911,13 +784,14 @@ export default { |
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
|
/deep/ .readonly .ql-toolbar { |
|
|
|
|
height: 0; |
|
|
|
|
padding: 0; |
|
|
|
|
border-bottom: 0; |
|
|
|
|
height: 0; |
|
|
|
|
padding: 0; |
|
|
|
|
border-bottom: 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.main { |
|
|
|
|
overflow: auto; |
|
|
|
|
overflow-x: hidden; |
|
|
|
|
height: calc(100vh - 161px); |
|
|
|
|
overflow: auto; |
|
|
|
|
overflow-x: hidden; |
|
|
|
|
height: calc(100vh - 161px); |
|
|
|
|
} |
|
|
|
|
</style> |