This commit is contained in:
zhangyc
2022-12-08 08:49:57 +08:00
parent 18ae75da41
commit bfbe1d9550
2 changed files with 82 additions and 84 deletions

View File

@@ -4,14 +4,14 @@
<div class="noticeTitle">
<!-- <div class="notitle"><span class="titlespan">公告</span></div> -->
<div class="switch">
<a-switch v-model:checked="noticeChecked" size="small" /><span
<a-switch v-model:checked="noticeChecked" @click="noticeFlag" size="small" /><span
style="margin-left: 16px"
>
开启
</span>
</div>
<template v-if="noticeChecked">
<p>当前公告内容</p>
<p>当前公告内容</p>
<!-- 预览 -->
<template v-if="!editOn">
<div class="txt-content">
@@ -44,11 +44,11 @@
</template>
</template>
</div>
</template>s
</template>
<script>
import { message } from "ant-design-vue";
import { reactive, toRefs, onMounted } from "vue";
import { getTask } from "../../api/indexTaskadd";
import { editProj, getTask } from "../../api/indexTaskadd";
// import { editProj } from "../../api/indexTaskadd";
import { publishNotice } from "../../api/indexNotice";
import emitter from "../../utils/bus";
@@ -62,7 +62,7 @@ export default {
},
setup(props) {
const state = reactive({
noticeChecked: true,
noticeChecked: false,
projectInfo: {},
noticeContent1: "",
noticeContent: "",
@@ -74,31 +74,42 @@ export default {
state.projectInfo = res.data.data.projectInfo;
state.noticeContent1 = state.projectInfo.notice;
state.noticeContent = state.projectInfo.notice;
state.noticeChecked = state.projectInfo.noticeFlag==0?false:true;
});
console.log("state.noticeChecked",state.noticeChecked);
};
const handleEdit = () => {
state.editOn = true;
};
const handleCancel = () => {
state.editOn = false;
};
const noticeFlag =()=>{
//state.noticeChecked = !state.noticeChecked;
console.log("111",state.projectInfo);
state.projectInfo.noticeFlag = state.noticeChecked?1:0;
editProj(state.projectInfo).then((res)=>{
console.log("res",res.data.data.projectInfo);
}).catch((error)=>{
console.log(error);
});
console.log("222",state.projectInfo);
}
const pubNotice = () => {
if (state.noticeContent == "") {
message.destroy();
return message.warning("请输入公告内容");
} else {
let obj = {
// createId: state.projectInfo.createId,
// createName: state.projectInfo.createName,
notice: state.noticeContent,
// noticeId: 0,
notice: state.noticeContent1,
projectId: props.projectId,
title: "",
};
publishNotice(obj)
.then((res) => {
publishNotice(obj);//加入历史
state.projectInfo.notice =state.noticeContent;
editProj(state.projectInfo).then((res) => {
// console.log("res");
// console.log(res);
if (res.data.code === 200) {
@@ -114,6 +125,8 @@ export default {
message.warning("发布失败");
console.log(err);
});
}
};
onMounted(() => {
@@ -125,6 +138,7 @@ export default {
pubNotice,
handleEdit,
handleCancel,
noticeFlag,
};
},
};

View File

@@ -283,24 +283,33 @@
v-model:checked="checked"
@click="changeopclo"
/>
<div
class="opclo"
:style="{ display: hideshow ? 'block' : 'none' }"
>
<div v-if="(checked==true)"
class="opclo">
<span>关闭</span>
</div>
<div
class="opclo"
:style="{ display: hideshow ? 'none' : 'block' }"
>
<div v-if="(checked==false)"
class="opclo" >
<span>开启</span>
</div>
</div>
<div
class="ntc_content"
:style="{ display: hideshow ? 'block' : 'none' }"
>
<div class="ntcc_tit">公告内容</div>
<div v-if="(checked==true)"
class="ntc_content">
<div class="ntcc_tit">当前公告内容</div>
<div class="textarea">
{{noticeContent==""?"暂无公告":noticeContent}}
<div v-if="(editFlag == false)" class="btnarea" >
<div>&nbsp;</div>
<div class="area_btn" @click="editNotice">
<div class="btnText">编辑</div>
</div>
</div>
</div>
<template v-if="(editFlag==true)">
<div>&nbsp;</div>
<div class="ntcc_tit" >编辑公告</div>
<div class="textarea">
<a-textarea
v-model:value="projectInfo.notice"
@@ -316,6 +325,7 @@
</div>
</div>
</div>
</template>
</div>
</div>
</div>
@@ -835,6 +845,8 @@ export default defineComponent({
edit: true,
fileList:[],
attachSwitch:true,
editFlag:false,
noticeContent:"",
// 共享文档列表
docList: [
{
@@ -852,29 +864,25 @@ export default defineComponent({
],
isEdit: false, // 是否处于编辑状态
// 基本信息
projectInfo: {
beginTime: null,
endTime: null,
name: null,
manager: null,
notice: null,
sourceBelongId: null,
remark: "",
courseSyncFlag: false,
level: null,
systemId: null,
boeFlag: false,
status: null,
picUrl: null,
noticeFlag: null,
},
projectInfo: {},
});
const value = ref("");
const textnum = "150";
const routered = useRouter();
const changeopclo = () => {
state.hideshow = !state.hideshow;
state.projectInfo.noticeFlag = state.checked?1:0;
api
.templateEdit( state.projectInfo)
.then((res) => {
console.log(res);
})
.catch((err) => {
console.log(err);
});
};
const editNotice =()=>{
state.editFlag = true ;
}
const changecheck2 = () => {
state.checked2 = !state.checked2;
};
@@ -937,25 +945,13 @@ export default defineComponent({
state.taskSyllabus = [];
console.log(res);
state.projectInfo.name = res.data.data.projectTemplateInfo.name;
state.projectInfo.beginTime = res.data.data.projectTemplateInfo.beginTime;
state.projectInfo.endTime = res.data.data.projectTemplateInfo.endTime;
state.projectInfo.manager = res.data.data.projectTemplateInfo.manager;
state.projectInfo.notice = res.data.data.projectTemplateInfo.notice;
state.projectInfo.sourceBelongId = res.data.data.projectTemplateInfo.sourceBelongId;
state.projectInfo.managerId = res.data.data.projectTemplateInfo.managerId;
state.projectInfo.remark = res.data.data.projectTemplateInfo.remark;
state.projectInfo.courseSyncFlag = res.data.data.projectTemplateInfo.courseSyncFlag;
state.projectInfo.level = res.data.data.projectTemplateInfo.level;
state.projectInfo.systemId = res.data.data.projectTemplateInfo.systemId;
state.projectInfo.boeFlag = res.data.data.projectTemplateInfo.boeFlag;
state.projectInfo.noticeFlag = res.data.data.projectTemplateInfo.noticeFlag;
state.projectInfo.remark = res.data.data.projectTemplateInfo.remark;
state.projectInfo.status = res.data.data.projectTemplateInfo.status;
state.projectInfo.picUrl = res.data.data.projectTemplateInfo.picUrl;
state.picUrl = res.data.data.projectTemplateInfo.picUrl;
state.projectInfo.attach = res.data.data.projectTemplateInfo.attach;
state.projectInfo.category = res.data.data.projectTemplateInfo.category;
state.projectInfo = res.data.data.projectTemplateInfo;
state.noticeContent = state.projectInfo.notice;
state.checked = state.projectInfo.noticeFlag==1?true:false;
console.log("state.checked", state.checked);
console.log("state.projectInfo",state.projectInfo);
console.log("res.data.data.projectTemplateInfo",res.data.data.projectTemplateInfo);
try{
state.fileList = JSON.parse(res.data.data.projectTemplateInfo.attach);
}catch{
@@ -988,29 +984,14 @@ export default defineComponent({
// 发布公告
const addNotice = () => {
console.log("ok====s");
let obj = {
name: state.projectInfo.name,
category: state.projectInfo.category,
picUrl: state.projectInfo.picUrl,
manager: state.projectInfo.manager,
managerId: state.projectInfo.managerId || 0,
sourceBelongId: state.projectInfo.sourceBelongId,
level: state.projectInfo.level,
systemId: state.projectInfo.systemId,
boeFlag: state.projectInfo.boeFlag ? 1 : 0,
courseSyncFlag: state.projectInfo.courseSyncFlag ? 1 : 0,
notice: state.projectInfo.notice,
noticeFlag: state.projectInfo.noticeFlag,
projectTemplateId: localStorage.getItem("projectTemplateId"),
remark: state.projectInfo.remark,
status: state.projectInfo.status,
attach: state.projectInfo.attach,
};
console.log("obj======", obj);
// state.projectInfo.notice=
if(!state.projectInfo.notice){
return message.warning("请输入公告内容");
}
api
.templateEdit(obj)
.templateEdit( state.projectInfo)
.then((res) => {
state.noticeContent = state.projectInfo.notice;
message.success("公告发布成功");
console.log(res);
})
@@ -1018,6 +999,7 @@ export default defineComponent({
message.error("公告发布失败" + err);
console.log(err);
});
state.editFlag =false;
};
// 删除阶段
const stateDel = (id) => {
@@ -1288,7 +1270,8 @@ export default defineComponent({
editRule,
handleChange2,
scoresum,
checkedClose
checkedClose,
editNotice
};
},
});
@@ -2217,6 +2200,7 @@ export default defineComponent({
.ntc_content {
.ntcc_tit {
margin-bottom: 16px;
font-weight: 600;
}
.textarea {
display: flex;