Merge branch 'master' of codeup.aliyun.com:6265f483e4166464dc2f9c14/boeu/portal

This commit is contained in:
dongruihua
2022-11-10 11:02:58 +08:00
29 changed files with 344 additions and 194 deletions

View File

@@ -3,9 +3,15 @@
<div class="article-list" v-for="(item, idx) in items" :key="idx" @click="jumpDetail(item)">
<div class="article-info">
<div class="article-info-title one-line-ellipsis">
<span class="titleContent" >
<div class="titleContent" >
<span style="float: right;">
<el-button class="btncolor" @click.stop="editItem(item.id)" type="text" icon="el-icon-edit">编辑</el-button>
<el-button style="margin-left: 30px;" class="btncolor" @click.stop="delItem(item)" type="text" icon="el-icon-delete">删除</el-button>
</span>
{{ item.title }}
</span>
</div>
</div>
<div class="art-head two-line-ellipsis">
<div class="article-info-summary">
@@ -65,7 +71,7 @@ export default {
}
},
mounted() {
console.log(this.items)
},
methods: {
classFilter(status){
@@ -197,6 +203,11 @@ export default {
font-size: 14px;
}
}
.btncolor{
color: #8590A6;
font-size: 14px;
}
.one-line-ellipsis {
width: 100%;
text-overflow: ellipsis;
@@ -285,7 +296,7 @@ export default {
}
}
}
.article-info-tools {
height: 30px;
display: flex;

View File

@@ -305,7 +305,7 @@ export default {
homeworkInfo: {},
examInfo: {},
assessInfo: {},
fileBaseUrl: this.$xpage.constants.fileBaseUrl,
fileBaseUrl: process.env.VUE_APP_FILE_BASE_URL,
btnLoading: false,
curCFile:{},//课件内容
coursewareInfo: {

View File

@@ -366,7 +366,7 @@
data(){
return {
converStatus:4,
fileBaseUrl:this.$xpage.constants.fileBaseUrl,
fileBaseUrl:process.env.VUE_APP_FILE_BASE_URL,
curPdfPath:'',
curCFile:{},//当前课件的内容
comTypes:[

View File

@@ -149,7 +149,7 @@
show-word-limit
:rows="3"
v-model="courseInfo.summary"
placeholder="请尽量填写课程简介(限255字以内),用于列表中显示,可以让用户更容易了解课程信息">
placeholder="请尽量填写课程简介,用于列表中显示,可以让用户更容易了解课程信息">
</el-input>
</el-form-item>
</el-col>
@@ -258,9 +258,9 @@
<el-form-item label="目标人群" required>
<el-input maxlength="50" v-model="courseInfo.forUsers" show-word-limit placeholder="目标人群(限50字以内)"></el-input>
</el-form-item>
<el-form-item label="受众">
<el-form-item label="受众"><!--:disabled="item.disabled"-->
<el-select value-key="key" style="width: 100%;" v-model="courseCrowds" filterable multiple placeholder="请选择">
<el-option v-for="item in userGroupList" :key="item.key" :label="item.value" :value="item"></el-option>
<el-option v-for="item in userGroupList" :key="item.key" :label="item.value" :value="item"></el-option>
</el-select>
</el-form-item>
<el-form-item label="课程价值"><el-input maxlength="200" v-model="courseInfo.value" show-word-limit placeholder="课程价值(限200字以内)"></el-input></el-form-item>
@@ -303,10 +303,10 @@
<el-input
type="textarea"
show-word-limit
maxlength="150"
maxlength="255"
:rows="5"
v-model="courseInfo.summary"
placeholder="请尽量填写课程简介(限255字以内),用于列表中显示,可以让用户更容易了解课程信息">
placeholder="请尽量填写课程简介,用于列表中显示,可以让用户更容易了解课程信息">
</el-input>
</el-form-item>
<!-- v-if="!weike.onlyRequired" -->
@@ -843,14 +843,25 @@ export default {
let crowdList=[];
if(result.crowds && result.crowds.length>0){
result.crowds.forEach(crowd=>{
crowdList.push({
let newCrowd={
key:crowd.groupId,
value:crowd.groupName,
disabled:false,
text:''
})
}
crowdList.push(newCrowd);
let hasUG=$this.userGroupList.some(ug=>{
return ug.key==crowd.groupId;
});
if(!hasUG){
newCrowd.disabled=true;
$this.userGroupList.push(newCrowd);
}
});
}
this.courseCrowds=crowdList;
//反向看userGroupList是否有
//课程图片
if (this.courseInfo.coverImg != '') {
this.courseCoverurl = this.fileUrl+this.courseInfo.coverImg;
@@ -1311,7 +1322,7 @@ export default {
if (this.sysTypeList.length > 2) {
this.courseInfo.sysType3 = this.sysTypeList[2]; //三级的id
}
//受众的处理
let crowds=[];
this.courseCrowds.forEach(item=>{

View File

@@ -2,7 +2,7 @@
<div class="answer-list">
<ul v-if="list.length > 0">
<li class="answer-list-index" v-for="item in list" :key="item.id">
<p v-if="isDynamic" class="portal-summary-text" style="margin-bottom:18px">
<p class="portal-summary-text" style="margin-bottom:18px">
<span v-if="!personal || isFollow">{{item.aname}}</span>{{item.cusInfo}}<span style="margin-left:28px">{{item.eventTime}}</span>
<span v-if="item.aid == userInfo.aid" class="follow-hide pointer" style="float:right">
<span v-if="item.hidden">已隐藏</span>
@@ -27,11 +27,11 @@
</div>
</li>
</ul>
<div v-else class="home-no-list">
<!-- <div v-else class="home-no-list">
<img class="img" :src="`${webBaseUrl}/images/homeWu/no-answer.png`" alt="" srcset="">
<p v-if="isFollow" class="text">暂时没有动态</p>
<p v-else class="text">还没有回答</p>
</div>
</div> -->
</div>
</template>
@@ -78,6 +78,10 @@
},
methods:{
jumpDetail(item){
if(item.deleted){
this.$message.warning("此内容已删除");
return;
}
this.$router.push('/qa/answer?id='+item.contentId)
},
emitHide(id) {

View File

@@ -2,7 +2,7 @@
<div class="article-list">
<ul v-if="list.length > 0">
<li class="article-list-index" v-for="item in list" :key="item.id">
<p v-if="isDynamic" class="portal-summary-text" style="margin-bottom:18px">
<p class="portal-summary-text" style="margin-bottom:18px">
<span v-if="!personal || isFollow">{{item.aname}}</span>{{item.cusInfo}}
<span style="margin-left:28px">{{item.eventTime}}</span>
<span v-if="item.aid == userInfo.aid" class="follow-hide pointer" style="float:right" >
@@ -31,11 +31,11 @@
</div>
</li>
</ul>
<div v-else class="home-no-list">
<!-- <div v-else class="home-no-list">
<img class="img" style="width:150px;height:160px" :src="`${webBaseUrl}/images/homeWu/no-article.png`" alt="" srcset="">
<p v-if="isFollow" class="text">暂时没有动态</p>
<p v-else class="text">还没有文章</p>
</div>
</div> -->
</div>
</template>
@@ -78,6 +78,10 @@
},
methods:{
jumpDetail(item){
if(item.info.deleted){
this.$message.warning("此文章已删除");
return;
}
this.$router.push('/article/detail?id='+item.contentId)
},
emitHide(id) {

View File

@@ -3,7 +3,7 @@
<div class="data-content" v-if="list.length >0">
<div :span="24" v-for="item in list" :key="item.id" class="case-list">
<div class="case-info">
<p v-if="isDynamic" class="portal-summary-text">
<p class="portal-summary-text">
<span v-if="!personal || isFollow">{{item.aname}}</span>{{item.cusInfo}}
<span style="margin-left:28px">{{item.eventTime}}</span>
<span v-if="item.aid == userInfo.aid" class="follow-hide pointer" style="float:right">
@@ -55,11 +55,11 @@
</div>
</div>
</div>
<div v-else class="home-no-list">
<!-- <div v-else class="home-no-list">
<img class="img" :src="`${webBaseUrl}/images/homeWu/no-case.png`" alt="" srcset="">
<p v-if="isFollow" class="text">暂时没有动态</p>
<p v-else class="text">还没有案例</p>
</div>
</div> -->
</div>
</template>
@@ -124,6 +124,13 @@
if(code==''|| code==undefined){return '';}
return this.orgDomainMap.get(code);
},
jumpDetail(item){
if(item.info.deleted){
this.$message.warning("此案例已删除");
return;
}
this.$router.push('/case/detail?id='+item.contentId)
},
}
}
</script>

View File

@@ -2,7 +2,7 @@
<div class="">
<ul class="data-info-ul" v-if="list.length > 0">
<li class="data-info" v-for="item in list" :key="item.id">
<p v-if="isDynamic" class="portal-summary-text" style="margin-bottom:18px">
<p class="portal-summary-text" style="margin-bottom:18px">
<span v-if="!personal || isFollow">{{item.aname}}</span>
{{item.cusInfo}} <span style="margin-left:28px">{{item.eventTime}}</span>
<span v-if="item.aid == userInfo.aid" class="follow-hide pointer" style="float:right" >
@@ -39,11 +39,11 @@
</li>
</ul>
<div v-else class="home-no-list">
<!-- <div v-else class="home-no-list">
<img class="img" :src="`${webBaseUrl}/images/homeWu/no-course.png`" alt="" srcset="">
<p v-if="isFollow" class="text">暂时没有动态</p>
<p v-else class="text">还没有课程</p>
</div>
</div> -->
</div>
</template>
@@ -98,7 +98,11 @@
if(!data.contentId){
return;
}
console.log(data.info,'data.info')
if(!data.info.enabled || data.info.deleted){
this.$message.warning("此课程已停用或已删除");
return;
}
this.$router.push({ path: '/course/detail?id=', query: { id: data.contentId } });
}
}

View File

@@ -2,7 +2,7 @@
<div class="note-list">
<ul v-if="list.length > 0">
<li class="note-list-index" v-for="item in list" :key="item.id">
<p v-if="isDynamic" style="word-break:break-all;word-wrap:break-word;margin-bottom:18px" class="portal-summary-text">
<p style="word-break:break-all;word-wrap:break-word;margin-bottom:18px" class="portal-summary-text">
<span style="word-break:break-all;word-wrap:break-word;margin-bottom:18px" v-if="!personal || isFollow">{{item.aname}}</span>{{item.cusInfo}}
<span style="margin-left:28px">{{item.eventTime}}</span>
<span v-if="item.aid == userInfo.aid" class="follow-hide pointer" style="float:right">
@@ -24,11 +24,11 @@
</div>
</li>
</ul>
<div v-else class="home-no-list">
<!-- <div v-else class="home-no-list">
<img class="img" :src="`${webBaseUrl}/images/homeWu/no-note.png`" alt="" srcset="">
<p v-if="isFollow" class="text">暂时没有动态</p>
<p v-else class="text">还没有笔记</p>
</div>
</div> -->
</div>
</template>
@@ -74,6 +74,10 @@
},
methods:{
jumpDetail(item){
if(item.info.deleted){
this.$message.warning("此笔记已删除");
return;
}
this.$router.push('/course/detail?id='+item.info.courseId)
},
emitHide(id) {

View File

@@ -2,9 +2,9 @@
<div class="put-list">
<ul v-if="list.length > 0">
<li class="put-list-index" v-for="item in list" :key="item.id">
<p v-if="isDynamic" class="portal-summary-text" style="margin-bottom:18px;margin-top:10px">
<span v-if="!personal || isFollow">{{item.aname}}</span>{{item.cusInfo}}
<span style="margin-left:28px">{{item.eventTime}}</span>
<p class="portal-summary-text" style="margin-bottom:18px;margin-top:10px">
<span v-if="!personal || isFollow">{{item.aname}}</span>{{item.cusInfo}}
<span style="margin-left:28px">{{item.eventTime}}</span>
<span v-if="item.aid == userInfo.aid" class="follow-hide pointer" style="float:right">
<span v-if="item.hidden">已隐藏</span>
<span v-else @click="emitHide(item.id)"> <svg-icon style="margin-right: 10px;font-size:22px;padding-top: 4px;" icon-class="eyes"></svg-icon>隐藏 </span>
@@ -23,14 +23,14 @@
</div>
</li>
</ul>
<div v-else class="home-no-list">
<!-- <div v-else class="home-no-list">
<img class="img" style="width:204px;height:160px" :src="`${webBaseUrl}/images/homeWu/no-put.png`" alt="" srcset="">
<p v-if="isFollow" class="text">暂时没有动态</p>
<p v-else class="text">还没有提问</p>
</div>
</div> -->
</div>
</template>
<script>
import interactBar from "@/components/Portal/interactBar.vue";
import { mapGetters,mapActions } from 'vuex';
@@ -74,15 +74,19 @@
},
jumpDetail(data) {
if(!data.id){
return;
return;
}
if(item.info.deleted){
this.$message.warning("此问题已删除");
return;
}
this.$router.push({ path: '/qa/answer', query: { id: data.id } });
},
}
}
</script>
<style lang="scss" scoped>
.put-list{
.put-title-info{
@@ -113,6 +117,5 @@
}
}
}
</style>

View File

@@ -48,7 +48,7 @@
</el-tooltip>
<span class="interact-bar-value"> {{data.shares}}</span>
</div>
<div v-if="views" style="cursor: default;" :style="`min-width: ${nodeWidth};`" class="interact-bar-btn" :class="{cursor:!readonly}">
<div v-if="views" style="cursor: default;" :style="`min-width: ${nodeWidth};margin-left:${data.views>1000? '40px':'20px'}`" class="interact-bar-btn" :class="{cursor:!readonly}">
<el-tooltip effect="light" content="浏览量" placement="top" :visible-arrow="false" popper-class="text-tooltip">
<svg-icon style="margin-right: 0;font-size:22px;padding-top: 4px;" icon-class="eyes"></svg-icon>
</el-tooltip>

View File

@@ -155,7 +155,7 @@ export default {
components:{gonggao},
computed: {
...mapGetters(['userInfo', 'userMsg','identity']),
...mapGetters(['userInfo', 'userMsg','identity','studyTaskCount']),
avatarText(){
return userAvatarText(this.userInfo.name);
@@ -190,20 +190,25 @@ export default {
console.log('lll')
},
loadBoeData() {
let params = {
// keyword:this.keyword,
page: 1,
size: 10
// cmtask_status:this.cmtask_status,
// cmtask_name:this.cmtask_name,
};
apiBoeCourse.cmtaskList(params).then(res => {
if (res.status == 200 && res.result.count > 0) {
this.isTiao = true;
} else {
this.isTiao = false;
}
});
if(this.studyTaskCount>0){
this.isTiao = true;
}else{
this.isTiao = false;
}
// let params = {
// // keyword:this.keyword,
// page: 1,
// size: 10
// // cmtask_status:this.cmtask_status,
// // cmtask_name:this.cmtask_name,
// };
// apiBoeCourse.cmtaskList(params).then(res => {
// if (res.status == 200 && res.result.count > 0) {
// this.isTiao = true;
// } else {
// this.isTiao = false;
// }
// });
},
handleCommand(val) {
let urlPre=window.location.protocol+'//'+window.location.host;

View File

@@ -78,9 +78,9 @@
</div>
<div class="learning-info">
<!--
<div @click="jumrank" style="cursor: pointer;" class="ranking-link"> BOE 排行榜 >></div>
-->
</div>
</div>