feat:调研管理操作的所有弹窗

This commit is contained in:
dongwug
2022-10-22 16:24:12 +08:00
parent 1b8ef50d05
commit ff4d6b335e

View File

@@ -69,21 +69,25 @@
@expand="expandTable"
:pagination="false"
/>
</div>
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
<!-- 表格 -->
<a-modal v-model:visible="out" :footer="null" :closable="false" style="margin-top: 250px">
<a-modal
v-model:visible="out"
:footer="null"
:closable="false"
style="margin-top: 250px"
>
<div class="out">
<div class="top">
<img class="topimg" src="../../assets/images/courseManage/add1.png" />
@@ -107,7 +111,8 @@
<div class="in">
<a-input
v-model:value="value"
show-count :maxlength="15"
show-count
:maxlength="15"
style="border-radius: 8px"
/>
</div>
@@ -119,6 +124,53 @@
</div>
</div></a-modal
>
<!--操作弹窗 -->
<a-modal
v-model:visible="delete_hs"
:footer="null"
:closable="closableQR"
wrapClassName="DelModal"
style="margin-top: 400px"
@cancel="delete_exit"
>
<div class="delete" :style="{ display: delete_hs ? 'block' : 'none' }">
<div class="del_header"></div>
<div class="del_main">
<div class="header">
<div class="del-icon" :style="{ display: del_hs || over_hs ? 'block' : 'none' }"><img src="@/assets/images/coursewareManage/notice.png" alt=""></div>
<div class="del-icon" :style="{ display: copy_hs || back_hs || pub_hs ? 'block' : 'none' }"><img src="@/assets/images/coursewareManage/QR.png" alt=""></div>
<span>提示</span>
<div class="close_exit" @click="delete_exit"></div>
</div>
<div class="body">
<div :style="{ display: del_hs ? 'block' : 'none' }">
<span>您确定要删除此调研吗</span>
</div>
<div :style="{ display: over_hs ? 'block' : 'none' }">
<span>您确定要结束此调研吗</span>
</div>
<div :style="{ display: copy_hs ? 'block' : 'none' }">
<span>您确定要复制此调研吗</span>
</div>
<div :style="{ display: back_hs ? 'block' : 'none' }">
<span>您确定要撤回此调研吗</span>
</div>
<div :style="{ display: pub_hs ? 'block' : 'none' }">
<span>您确定要发布此调研吗</span>
</div>
</div>
<div class="del_btnbox">
<div class="del_btn btn1">
<div class="btnText" @click="delete_exit">取消</div>
</div>
<div class="del_btn btn2">
<div class="btnText" @click="delete_exit">确定</div>
</div>
</div>
</div>
</div>
</a-modal>
<!--操作弹窗 -->
</div>
</template>
<script>
@@ -219,6 +271,12 @@ export default {
valueE: ref(" "),
valueEE: ref(" "),
valuei: ref(" "),
delete_hs: false,
del_hs: false,
over_hs: false,
copy_hs: false,
back_hs: false,
pub_hs: false,
});
const tableDataFunc = () => {
const columns = [
@@ -286,7 +344,6 @@ export default {
key: "opacation",
width: 200,
align: "center",
},
];
return columns;
@@ -299,38 +356,74 @@ export default {
//单层项目
value.opacation = (
<div class="operation">
{value.state === "已发布" ? (
<div class="fb">
<router-link to="/managepage" class="jc">管理</router-link>
<div class="jc">复制</div>
<div class="jc">撤回</div>
<div class="jc">结束</div>
</div>
) : (
<div></div>
)}
{value.state === "待发布" ? (
<div class="fb">
<router-link to="/researchadd" class="jc">基础信息</router-link>
<router-link to="/managepage" class="jc">管理</router-link>
<div class="jc">复制</div>
<div class="jc">编辑</div>
<div class="jc">删除</div>
</div>
) : (
<div></div>
)}
{value.state === "已结束" ? (
<div class="fb">
<div class="jc">复制</div>
<div class="jc">删除</div>
</div>
) : (
<div></div>
)}
{value.state === "已发布" ? (
<div class="fb">
<router-link to="/managepage" class="jc">
管理
</router-link>
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.copy_hs = true;
}}>复制</div>
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.back_hs = true;
}}>撤回</div>
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.over_hs = true;
}}>结束</div>
</div>
) : (
<div></div>
)}
{value.state === "待发布" ? (
<div class="fb">
<router-link to="/researchadd" class="jc">
基础信息
</router-link>
<router-link to="/managepage" class="jc">
管理
</router-link>
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.pub_hs = true;
}}>发布</div>
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.copy_hs = true;
}}>复制</div>
<div class="jc">编辑</div>
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.del_hs = true;
}}>删除</div>
</div>
) : (
<div></div>
)}
{value.state === "已结束" ? (
<div class="fb">
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.copy_hs = true;
}}>复制</div>
<div class="jc"
onClick={()=>{
state.delete_hs = true;
state.del_hs = true;
}}>删除</div>
</div>
) : (
<div></div>
)}
</div>
);
}
@@ -357,6 +450,14 @@ export default {
const chooseImg = (id) => {
console.log(id);
};
const delete_exit = () => {
state.delete_hs = false;
state.del_hs = false;
state.over_hs = false;
state.copy_hs = false;
state.back_hs = false;
state.pub_hs = false;
};
return {
...toRefs(state),
selectProjectName,
@@ -366,6 +467,7 @@ export default {
tableDataFunc,
chooseImg,
getTableDate,
delete_exit,
};
},
};
@@ -378,108 +480,108 @@ export default {
clear: both;
}
.out {
//display: flex;
display: block;
position: absolute;
top: 120px;
width: 680px;
// height: 525px;
background-color: #fff;
//display: flex;
display: block;
position: absolute;
top: 120px;
width: 680px;
// height: 525px;
background-color: #fff;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top: 20%;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top: 20%;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
}
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
flex-direction: column;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
.name {
width: 78%;
// background-color: lightcoral;
display: flex;
flex-direction: column;
margin-top: 20px;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
.name {
width: 78%;
// background-color: lightcoral;
display: flex;
margin-top: 20px;
align-items: center;
height: 40px;
// border: 1px solid black;
height: 40px;
// border: 1px solid black;
.inname {
color: #6f6f6f;
font-size: 14px;
margin-left: 7px;
.inname {
color: #6f6f6f;
font-size: 14px;
margin-left: 7px;
}
.in {
margin-left: 14px;
width: 81%;
.ant-input {
border-radius: 5px;
// height: 120%;
width: 100%;
height: 30px;
}
.in {
margin-left: 14px;
width: 81%;
.ant-input {
border-radius: 5px;
// height: 120%;
width: 100%;
height: 30px;
}
.showcount {
.showcount {
position: absolute;
right: 10px;
color: #c7cbd2;
bottom: 5px;
}
}
}
.btn {
width: 33%;
margin-top: 30px;
display: flex;
justify-content: space-between;
margin-bottom: 30px;
.samtn {
width: 100px;
height: 40px;
font-size: 14px;
border: 1px solid #409EFF;
border-radius: 8px;
cursor: pointer;
}
.btn1 {
background-color: #fff;
color: #4ea6ff;
}
.btn2 {
margin-left: 10px;
background-color: #409EFF;
color: #fff;
}
}
.btn {
width: 33%;
margin-top: 30px;
display: flex;
justify-content: space-between;
margin-bottom: 30px;
.samtn {
width: 100px;
height: 40px;
font-size: 14px;
border: 1px solid #409eff;
border-radius: 8px;
cursor: pointer;
}
.btn1 {
background-color: #fff;
color: #4ea6ff;
}
.btn2 {
margin-left: 10px;
background-color: #409eff;
color: #fff;
}
}
}
}
.researchmanage {
width: 100%;
height: 100%;
@@ -581,12 +683,12 @@ export default {
}
}
.tableBox {
margin: 20px 38px 30px ;
margin: 20px 38px 30px;
display: flex;
flex: 1;
//position: relative;
flex-direction: column;
th.h {
background-color: #eff4fc !important;
}
@@ -596,38 +698,142 @@ export default {
> td {
background: #f6f9fd;
}
}
.pa {
width: 100%;
// height: 20px;
// background-color: red;
display: flex;
justify-content: center;
//position: absolute;
width: 100%;
// height: 20px;
// background-color: red;
display: flex;
justify-content: center;
//position: absolute;
margin-bottom: 20px;
.pagination {
margin-bottom: 20px;
.pagination {
margin-bottom: 20px;
}
}
}
.unout {
display: none;
}
.operation {
.operation {
display: flex;
justify-content: right;
.fb {
display: flex;
margin-right: 20px;
.jc {
color: #4ea6ff;
font-size: 14px;
margin-left: 20px;
.fb {
display: flex;
margin-right: 20px;
.jc {
color: #4ea6ff;
font-size: 14px;
margin-left: 20px;
white-space: nowrap;
cursor: pointer;
}
}
}
}
.DelModal {
.ant-modal {
.ant-modal-content {
width: 424px !important;
.ant-modal-body {
.delete {
z-index: 999;
width: 424px;
background: #ffffff;
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
border-radius: 4px;
position: absolute;
left: 50%;
top: 10%;
transform: translate(-50%, -50%);
.del_header {
position: absolute;
width: calc(100%);
height: 40px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
}
.del_main {
width: 100%;
position: relative;
.header {
display: flex;
align-items: center;
padding-top: 20px;
padding-left: 26px;
font-size: 16px;
.del-icon {
display: flex;
align-items: center;
margin-right: 10px;
// background-image: url(@/assets/images/coursewareManage/notice.png);
img{
background-size: 100% 100%;
width: 16px;
height: 16px;
}
}
.icon {
width: 16px;
height: 16px;
margin-right: 10px;
background-image: url(@/assets/images/coursewareManage/QR.png);
background-size: 100% 100%;
}
.close_exit {
position: absolute;
right: 42px;
cursor: pointer;
width: 20px;
height: 20px;
background-image: url(@/assets/images/coursewareManage/close.png);
background-size: 100% 100%;
}
}
.body {
width: 100%;
margin: 34px auto 56px auto;
display: flex;
justify-content: center;
align-items: center;
}
.del_btnbox {
display: flex;
margin: 30px auto;
justify-content: center;
.del_btn {
width: 100px;
height: 40px;
background: rgba(64, 158, 255, 0);
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 14px;
flex-shrink: 0;
cursor: pointer;
.btnText {
font-size: 14px;
font-weight: 400;
line-height: 40px;
}
}
.btn1 {
border: 1px solid rgba(64, 158, 255, 1);
color: #4ea6ff;
}
.btn2 {
background-color: #4ea6ff;
color: #ffffff;
}
}
}
}
}
}
}
}
</style>