Merge branch 'master' of ssh://gitlab.dongwu-inc.com:10022/BOE/fe-manage

This commit is contained in:
songwc
2022-10-10 18:13:21 +08:00
6 changed files with 1495 additions and 254 deletions

View File

@@ -78,7 +78,6 @@ border: 1px solid #C7CBD2 !important;
// 表格---------------------------------
.tableBox{
.ant-table-row .ant-table-cell{
height: 48px ;
font-size: 14px;
@@ -148,4 +147,48 @@ border: 1px solid #C7CBD2 !important;
display: none;
}
}
}
}
// 表格---------------------------------
//表格下拉框-------------------------------------------
.tableSelect {
margin-left: 21px;
display: inline-block;
.ant-select:not(.ant-select-customize-input)
.ant-select-selector
.ant-select-selection-search-input {
background-color: rgba(255, 255, 255, 0);
border: none;
}
.ant-select:not(.ant-select-customize-input) .ant-select-selector {
background-color: rgba(255, 255, 255, 0);
border: none;
}
.ant-select-single:not(.ant-select-customize-input) .ant-select-selector {
padding: 0;
}
.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input)
.ant-select-selector {
box-shadow: none;
}
.ant-select-arrow {
right: 0px;
color: rgba(0, 0, 0, 0.8);
font-size: 14px;
line-height: 36px;
// top: 17px;
top:14px;
}
.ant-select-selection-item {
font-size: 14px;
font-weight: 400;
color: #4ea6ff;
line-height: 36px;
}
.ant-select-single.ant-select-open .ant-select-selection-item{
color: #4ea6ff;
}
}
.tabledropdown {
width: 100px !important;
}
//表格下拉框-------------------------------------------

View File

@@ -112,7 +112,7 @@ export default {
}
.roleItems {
width: 109px;
height: 80px;
height: 90px;
padding-top: 10px;
background: #ffffff;
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
@@ -121,6 +121,7 @@ export default {
right: 0px;
text-align: center;
display: none;
z-index: 100;
}
.roleItem {
font-size: 14px;

View File

@@ -49,10 +49,10 @@
</div>
<div class="select fitems">
<a-range-picker
v-model:value="value2"
separator="至"
:placeholder="[' 开始时间', ' 结束时间']"
/>
v-model:value="value2"
separator="至"
:placeholder="[' 开始时间', ' 结束时间']"
/>
</div>
</div>
</div>
@@ -410,9 +410,9 @@
</div>
</template>
<script>
import { reactive, toRefs, defineComponent, ref } from 'vue';
import { PlusOutlined, LoadingOutlined } from '@ant-design/icons-vue';
import { message } from 'ant-design-vue';
import { reactive, toRefs, defineComponent, ref } from "vue";
import { PlusOutlined, LoadingOutlined } from "@ant-design/icons-vue";
import { message } from "ant-design-vue";
function getBase64(img, callback) {
const reader = new FileReader();
@@ -427,202 +427,262 @@ export default defineComponent({
setup() {
const state = reactive({
tableData : [{
key: '1',
num:1,
name: '时间管理',
content: '领导力',
courseform: '线上',
project: '管理者进阶-腾飞班1',
stunum: '50',
grade: '5',
status: '未提交',
ynpub: '未发布',
creator: '管理员',
createtime: '2022-07-20 9:30',
pubtime: '2022-07-20 9:30',
ynuse: '启用',
kkty:false,
}, {
key: '2',
num:2,
name: '智能制造初级课程',
content: '专业力',
courseform: '线上',
project: '-',
stunum: '200',
grade: '5',
status: '待审核',
ynpub: '未发布',
creator: '管理员',
createtime: '2022-07-20 9:30',
pubtime: '2022-07-20 9:30',
ynuse: '启用',
kkty:true,
}, {
key: '3',
num:3,
name: '产业必备技能',
content: '专业力',
courseform: '线上',
project: '-',
stunum: '200',
grade: '5',
status: '已审核',
ynpub: '已发布',
creator: '管理员',
createtime: '2022-07-20 9:30',
pubtime: '2022-07-20 9:30',
ynuse: '启用',
kkty:true,
}, {
key: '4',
num:4,
name: 'B11入模培训',
content: '专业力',
courseform: '线上',
project: '-',
stunum: '200',
grade: '5',
status: '审核未通过',
ynpub: '未发布',
creator: '管理员',
createtime: '2022-07-20 9:30',
pubtime: '2022-07-20 9:30',
ynuse: '停用',
kkty:true,
}, {
key: '5',
num:5,
name: '入职培训',
content: '通用力',
courseform: '面授',
project: '-',
stunum: '5',
grade: '5',
status: '未提交',
ynpub: '未发布',
creator: '管理员',
createtime: '2022-07-20 9:30',
pubtime: '2022-07-20 9:30',
ynuse: '启用',
kkty:true,
}, {
key: '6',
num:6,
name: '入职培训',
content: '通用力',
courseform: '面授',
project: '-',
stunum: '5',
grade: '6',
status: '已审核',
ynpub: '已发布',
creator: '管理员',
createtime: '2022-07-20 9:30',
pubtime: '2022-07-20 9:30',
ynuse: '启用',
kkty:true,
}],
tableData: [
{
key: "1",
num: 1,
name: "时间管理",
content: "领导力",
courseform: "线上",
project: "管理者进阶-腾飞班1",
stunum: "50",
grade: "5",
status: "未提交",
ynpub: "未发布",
creator: "管理员",
createtime: "2022-07-20 9:30",
pubtime: "2022-07-20 9:30",
ynuse: "启用",
kkty: false,
},
{
key: "2",
num: 2,
name: "智能制造初级课程",
content: "专业力",
courseform: "线上",
project: "-",
stunum: "200",
grade: "5",
status: "待审核",
ynpub: "未发布",
creator: "管理员",
createtime: "2022-07-20 9:30",
pubtime: "2022-07-20 9:30",
ynuse: "启用",
kkty: true,
},
{
key: "3",
num: 3,
name: "产业必备技能",
content: "专业力",
courseform: "线上",
project: "-",
stunum: "200",
grade: "5",
status: "已审核",
ynpub: "已发布",
creator: "管理员",
createtime: "2022-07-20 9:30",
pubtime: "2022-07-20 9:30",
ynuse: "启用",
kkty: true,
},
{
key: "4",
num: 4,
name: "B11入模培训",
content: "专业力",
courseform: "线上",
project: "-",
stunum: "200",
grade: "5",
status: "审核未通过",
ynpub: "未发布",
creator: "管理员",
createtime: "2022-07-20 9:30",
pubtime: "2022-07-20 9:30",
ynuse: "停用",
kkty: true,
},
{
key: "5",
num: 5,
name: "入职培训",
content: "通用力",
courseform: "面授",
project: "-",
stunum: "5",
grade: "5",
status: "未提交",
ynpub: "未发布",
creator: "管理员",
createtime: "2022-07-20 9:30",
pubtime: "2022-07-20 9:30",
ynuse: "启用",
kkty: true,
},
{
key: "6",
num: 6,
name: "入职培训",
content: "通用力",
courseform: "面授",
project: "-",
stunum: "5",
grade: "6",
status: "已审核",
ynpub: "已发布",
creator: "管理员",
createtime: "2022-07-20 9:30",
pubtime: "2022-07-20 9:30",
ynuse: "启用",
kkty: true,
},
],
});
const tableDataFunc = () => {
const columns = [
{
title: '序号',
width: 200,
dataIndex: 'num',
key: 'num',
align: "center",
}, {
title: '名称',
width: 200,
dataIndex: 'name',
key: 'name',
}, {
title: '内容分类',
width: 200,
dataIndex: 'content',
key: '1',
align: "center",
}, {
title: '课程形式',
width: 200,
dataIndex: 'courseform',
key: '2',
align: "center",
}, {
title: ' 所属项目',
width: 300,
dataIndex: 'project',
key: '3',
align: "center",
}, {
title: '学习人数',
width: 200,
dataIndex: 'stunum',
key: '4',
align: "center",
}, {
title: '评分',
width: 200,
dataIndex: 'grade',
key: '5',
align: "center",
}, {
title: '状态',
width: 200,
dataIndex: 'status',
key: '6',
align: "center",
}, {
title: '是否发布',
width: 200,
dataIndex: 'ynpub',
key: '7',
align: "center",
}, {
title: '创建人',
width: 200,
dataIndex: 'creator',
key: '8',
align: "center",
}, {
title: '创建时间',
width: 280,
dataIndex: 'createtime',
key: '9',
align: "center",
}, {
title: '上线时间',
width: 280,
dataIndex: 'pubtime',
key: '10',
align: "center",
}, {
title: '是否停用',
width: 200,
key: 'either',
dataIndex: 'ynuse',
align: "center",
}, {
title: '操作',
width: 400,
className: "h",
dataIndex: "opacation",
key: 'operation',
fixed: 'right',
align: "center",
scopedSlots: { customRender: "action" },
customRender: (text) => {
title: "序号",
width: 200,
dataIndex: "num",
key: "num",
align: "center",
},
{
title: "名称",
width: 200,
dataIndex: "name",
key: "name",
},
{
title: "内容分类",
width: 200,
dataIndex: "content",
key: "1",
align: "center",
},
{
title: "课程形式",
width: 200,
dataIndex: "courseform",
key: "2",
align: "center",
},
{
title: " 所属项目",
width: 300,
dataIndex: "project",
key: "3",
align: "center",
},
{
title: "学习人数",
width: 200,
dataIndex: "stunum",
key: "4",
align: "center",
},
{
title: "评分",
width: 200,
dataIndex: "grade",
key: "5",
align: "center",
},
{
title: "状态",
width: 200,
dataIndex: "status",
key: "6",
align: "center",
},
{
title: "是否发布",
width: 200,
dataIndex: "ynpub",
key: "7",
align: "center",
},
{
title: "创建人",
width: 200,
dataIndex: "creator",
key: "8",
align: "center",
},
{
title: "创建时间",
width: 280,
dataIndex: "createtime",
key: "9",
align: "center",
},
{
title: "上线时间",
width: 280,
dataIndex: "pubtime",
key: "10",
align: "center",
},
{
title: "是否停用",
width: 200,
key: "either",
dataIndex: "ynuse",
align: "center",
},
{
title: "操作",
width: 400,
className: "h",
dataIndex: "opacation",
key: "operation",
fixed: "right",
align: "center",
scopedSlots: { customRender: "action" },
customRender: (text) => {
// console.log(text);
return (
<div class="op_box">
<div class="opacation">
<span class={text.record.courseform === '面授' ? "activecls" : "errorCls"} style={{ "margin-left": "25px" }} >开课</span>
<span class={text.record.ynuse === '停用' ? "activecls" : "errorCls"} style={{ "margin-left": "25px" }} >停用</span>
<span class={text.record.status === '未提交' || text.record.status === '审核未通过' ? "activecls" : "errorCls"} style={{ "margin-left": "25px" }} >编辑</span>
<span class={text.record.status === '已审核' ? "activecls" : "errorCls"} style={{ "margin-left": "25px" }} >管理</span>
<span class={text.record.status === '待审核' ? "errorCls" : "activecls"} style={{ "margin-left": "25px" }} >复制</span>
<span
class={
text.record.courseform === "面授"
? "activecls"
: "errorCls"
}
style={{ "margin-left": "25px" }}
>
开课
</span>
<span
class={
text.record.ynuse === "停用" ? "activecls" : "errorCls"
}
style={{ "margin-left": "25px" }}
>
停用
</span>
<span
class={
text.record.status === "未提交" ||
text.record.status === "审核未通过"
? "activecls"
: "errorCls"
}
style={{ "margin-left": "25px" }}
>
编辑
</span>
<span
class={
text.record.status === "已审核" ? "activecls" : "errorCls"
}
style={{ "margin-left": "25px" }}
>
管理
</span>
<span
class={
text.record.status === "待审核" ? "errorCls" : "activecls"
}
style={{ "margin-left": "25px" }}
>
复制
</span>
<span style={{ "margin-left": "25px" }} class="more">
<span>授权</span>
<div class="moreArrow"></div>
@@ -638,12 +698,12 @@ export default defineComponent({
</span>
</div>
</div>
);
);
},
}];
},
];
return columns;
}
};
const fileList = ref([]);
const loading = ref(false);
@@ -748,16 +808,16 @@ export default defineComponent({
const of_hShow = () => {
if (state.of_hs == false) {
state.of_hs = true
}
}
state.of_hs = true;
}
};
const hideShow = () => {
if (state.hideshow == false) {
state.hideshow = true;
} else {
state.hideshow = false;
}
}
};
const bs_hShow = () => {
if (state.bs_hs == true) {
state.bs_hs = false;
@@ -1037,7 +1097,7 @@ export default defineComponent({
}
}
.faceteach{
.faceteach {
display: none;
z-index: 1000;
width: 1358px;
@@ -1190,7 +1250,7 @@ export default defineComponent({
.tableBox {
margin: 20px 38px 30px;
.op_box{
.op_box {
display: flex;
justify-content: right;
.opacation {

View File

@@ -355,7 +355,7 @@ export default {
};
</script>
<style scoped lang="scss" >
<style scoped lang="scss">
.clearfix:before,
.clearfix:after {
content: " ";
@@ -840,4 +840,4 @@ export default {
}
}
}
</style>
</style>

File diff suppressed because it is too large Load Diff

View File

@@ -1,16 +1,113 @@
<template>
<div class="researchadd">
<div class="header">
<span class="title">创建调研</span>
<div class="goback"><span class="return"></span><router-link class="returntext" to="/researchmanage">返回</router-link></div>
</div>
<div class="content">
<div class="type"></div>
<div class="name">
<div class="star">*</div>
<div class="namebox">
<div class="inname">类型</div>
</div>
<div class="in">
<input type="radio" name="type" id="single" checked="checked"/><label for="single" class="text" style="margin-left: 5px">单选</label>
<input type="radio" name="type" id="double" style="margin-left: 10px"/><label for="double" class="text" style="margin-left: 5px">多选</label>
<input type="radio" name="type" id="score" style="margin-left: 10px"/><label for="score" class="text" style="margin-left: 5px">评分题</label>
</div>
</div>
<div class="name">
<div class="namebox">
<img
class="nameimg"
src="../../assets/images/basicinfo/asterisk.png"
/>
<div class="inname">提干</div>
<div class="in">
<a-input v-model:value="valueE" placeholder="请输入项目名称"/>
</div>
<div class="in">
<a-input v-model:value="valueE" placeholder="请输入项目名称" />
</div>
</div>
<div class="name">
<div class="in" style="margin-left: 133px">
<a-button type="primary" style="width: 100px;height: 40px;border-radius: 8px">添加选项</a-button>
</div>
</div>
<div class="options">
<div class="name" >
<div class="namebox">
<div class="inname">选项1</div>
</div>
<div class="in">
<a-input v-model:value="valueE" />
</div>
</div>
<div class="delete">删除</div>
</div>
<div class="name" >
<div class="in" style="margin-left: 133px">
<div class="addimg">+添加图片</div>
</div>
</div>
<div class="options">
<div class="name" >
<div class="namebox">
<div class="inname">选项1</div>
</div>
<div class="in">
<a-input v-model:value="valueE" />
</div>
</div>
<div class="delete">删除</div>
</div>
<div class="picture">
<img class="pictureimg" src=""/>
<div class="picturename">图片名称1.jpg</div>
</div>
</div>
<div class="header">
<span class="title" style="font-size: 14px">选项设置</span>
</div>
<div class="content">
<div class="name" >
<div class="namebox">
<div class="inname">最低分</div>
</div>
<div class="in">
<a-input v-model:value="valueE" />
</div>
<div class="namebox" style="margin-left: -50px">
<div class="inname">最高分</div>
</div>
<div class="in">
<a-input v-model:value="valueE" />
</div>
</div>
<div class="scorebox">
<div class="scoretext">非常满意</div>
<div class="number">
<a-button class="btn" style="margin-left:10px">1</a-button>
<a-button class="btn">2</a-button>
<a-button class="btn">3</a-button>
<a-button class="btn">4</a-button>
<a-button class="btn">5</a-button>
<a-button class="btn">6</a-button>
<a-button class="btn">7</a-button>
<a-button class="btn">8</a-button>
<a-button class="btn">9</a-button>
<a-button class="btn" style="margin-right: 10px;">10</a-button>
</div>
<div class="scoretext">非常不满意</div>
</div>
<div class="name name2">
<div class="namebox">
<div class="inname" style="margin-top: 13px">备注</div>
</div>
<div class="in">
<a-textarea
v-model:value="valuei"
style="height: 80px"
/>
</div>
</div>
</div>
<div class="footer">
@@ -19,8 +116,16 @@
<a-button type="primary" ghost style="width: 100px;height: 40px;margin-left: 14px;border-radius: 8px">取消</a-button>
</div>
</div>
</div>
</template>
<style>
<script lang="ts">
</script>
<style lang="scss">
.researchadd {
width: 100%;
display: flex;
flex-direction: column;
.header {
width: 100%;
display: flex;
@@ -56,8 +161,111 @@
}
.content {
display: flex;
flex-direction: column;
flex-direction: column;
.scorebox {
display:flex;
align-items: center;
margin-top: 20px;
margin-left:70px;
.scoretext {
font-size: 14px;
color: #56A3F9;
}
.number {
display: flex;
border: 1px solid #D7E5FD;
border-radius: 5px;
margin: 0 10px;
.btn {
border: 1px solid #56A3F9;
border-radius: 5px;
width: 40px;
height: 40px;
color: #56A3F9;
margin: 5px;
}
}
}
.picture {
display: flex;
flex-direction: column;
margin-top: 20px;
margin-left: 133px;
.pictureimg {
width: 100px;
height: 100px;
}
.picturename {
color: #6F6F6F;
font-size: 14px;
}
}
.name2 {
display: flex;
align-items: flex-start;
}
.options {
display:flex;
}
.delete {
margin-top: 27px;
margin-left: 20px;
float: right;
color: #4EA6FF;
font-size: 14px;
}
.name {
width: 50%;
// background-color: lightcoral;
display: flex;
margin-top: 20px;
align-items: center;
//height: 40px;
// border: 1px solid black;
.namebox {
width: 120px;
display: flex;
align-items: center;
justify-content: flex-end;
flex-shrink: 0;
.nameimg {
width: 10px;
height: 10px;
}
}
.inname {
color: #6f6f6f;
font-size: 14px;
margin-left: 7px;
}
.in {
margin-left: 14px;
flex: 1;
.addimg {
color: rgba(78, 166, 255, 1);
font-size: 14px;
}
.text {
color: rgba(109, 117, 132, 1);
font-size: 14px;
//line-height: 24px;
}
.ant-radio-wrapper {
}
.ant-input {
border-radius: 5px;
// height: 120%;
width: 100%;
height: 40px;
}
.ant-select-selector {
border-radius: 5px;
// height: 120%;
width: 100%;
height: 40px;
}
}
}
}
.footer {
width: 100%;
@@ -69,4 +277,6 @@
cursor: pointer;
}
}
}
</style>