feat(richedit): 添加撤审和发布按钮并优化权限控制
为二审账号添加撤审和发布按钮功能,同时优化不同用户类型的操作权限控制 重构详情抽屉中的按钮逻辑,增加退改和复审功能
This commit is contained in:
parent
2fbc1d841d
commit
3118dd6424
|
|
@ -7,21 +7,51 @@
|
||||||
<div class="title">{{ readOnly ? '资讯信息浏览' : type == 1 ? '资讯信息编辑' : '资讯信息创建' }}</div>
|
<div class="title">{{ readOnly ? '资讯信息浏览' : type == 1 ? '资讯信息编辑' : '资讯信息创建' }}</div>
|
||||||
|
|
||||||
<div class="btn" v-if="type == 1">
|
<div class="btn" v-if="type == 1">
|
||||||
<el-button type="text" v-if="!form.deleted && (data.status == 0 || data.status == 1)"
|
<!-- <el-button type="text"
|
||||||
|
v-if="!form.deleted && (data.status == 3 || data.status == -1 || data.status == 4 || data.status == 2) && (Session.get('userInfoLocal').userType == '01' || Session.get('userInfoLocal').userType == '02')"
|
||||||
@click="handleEditStatus(!readOnly)">{{ readOnly ?
|
@click="handleEditStatus(!readOnly)">{{ readOnly ?
|
||||||
'编辑' : '浏览' }}</el-button>
|
'编辑' : '浏览' }}</el-button>
|
||||||
|
|
||||||
<el-button type="text"
|
<el-button type="text"
|
||||||
v-if="!form.deleted && (data.status == 3) && Session.get('userInfoLocal').userType == '01'"
|
v-else-if="!form.deleted && (data.status == 0 || data.status == 1 || data.status == -1)"
|
||||||
@click="handleEditStatus(!readOnly)">{{ readOnly ?
|
@click="handleEditStatus(!readOnly)">{{ readOnly ?
|
||||||
'编辑' : '浏览' }}</el-button>
|
'编辑' : '浏览' }}</el-button> -->
|
||||||
|
|
||||||
|
<!-- <el-button type="text" style="color: #ff1818"
|
||||||
|
v-if="!form.deleted && (data.status == 0 || data.status == 1 || data.status == -1)"
|
||||||
|
@click="doDeleteNewsFn(data)">删除</el-button> -->
|
||||||
|
<div v-if="Session.get('userInfoLocal').userType == '00'">
|
||||||
|
|
||||||
|
<el-button type="text" v-if="!form.deleted && (data.status == 1 || data.status == -1)"
|
||||||
|
@click="handleEditStatus(!readOnly)">{{ readOnly ?
|
||||||
|
'编辑' : '浏览' }}</el-button>
|
||||||
|
|
||||||
|
<el-button type="text" style="color: #ff1818"
|
||||||
|
v-if="!form.deleted && (data.status == 0 || data.status == 1)"
|
||||||
|
@click="doDeleteNewsFn(data)">删除</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div v-if="Session.get('userInfoLocal').userType == '02'">
|
||||||
|
<el-button type="text"
|
||||||
|
v-if="!form.deleted && (data.status == 0 || data.status == 1 || data.status == 3)"
|
||||||
|
@click="handleEditStatus(!readOnly)">{{ readOnly ?
|
||||||
|
'编辑' : '浏览' }}</el-button>
|
||||||
|
|
||||||
|
<el-button type="text" style="color: #ff1818"
|
||||||
|
v-if="!form.deleted && (data.status == 0 || data.status == 1)"
|
||||||
|
@click="doDeleteNewsFn(data)">删除</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div v-if="Session.get('userInfoLocal').userType == '01'">
|
||||||
|
<el-button type="text" v-if="!form.deleted && (data.status == 4 || data.status == 2)"
|
||||||
|
@click="handleEditStatus(!readOnly)">{{ readOnly ?
|
||||||
|
'编辑' : '浏览' }}</el-button>
|
||||||
|
|
||||||
|
<el-button type="text" style="color: #ff1818"
|
||||||
|
v-if="!form.deleted && (data.status == 0 || data.status == 1)"
|
||||||
|
@click="doDeleteNewsFn(data)">删除</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- <el-button type="text"
|
|
||||||
v-if="data.status == 2 && !form.deleted && Session.get('userInfoLocal').userType == '01'"
|
|
||||||
@click="doNewsPublishFn(data, 1)">撤稿</el-button> -->
|
|
||||||
<el-button type="text" style="color: #ff1818"
|
|
||||||
v-if="!form.deleted && (data.status == 0 || data.status == 1)"
|
|
||||||
@click="doDeleteNewsFn(data)">删除</el-button>
|
|
||||||
<el-button type="text" @click="clickFull" v-if="!isMobileByWidth()">
|
<el-button type="text" @click="clickFull" v-if="!isMobileByWidth()">
|
||||||
<el-icon v-if="!isFull">
|
<el-icon v-if="!isFull">
|
||||||
<FullScreen />
|
<FullScreen />
|
||||||
|
|
@ -121,16 +151,30 @@
|
||||||
<el-button v-if="data?.status != 3" type="primary" @click="doApprovalFn()">送审</el-button>
|
<el-button v-if="data?.status != 3" type="primary" @click="doApprovalFn()">送审</el-button>
|
||||||
<el-button v-else-if="data?.status == 3" type="primary" @click="doApprovalFn()">撤审</el-button>
|
<el-button v-else-if="data?.status == 3" type="primary" @click="doApprovalFn()">撤审</el-button>
|
||||||
</div> -->
|
</div> -->
|
||||||
<el-button type="primary" @click="submit(0, false)">
|
|
||||||
|
<el-button
|
||||||
|
v-if="data?.status == 2 && !form.deleted && Session.get('userInfoLocal').userType == '01'"
|
||||||
|
type="primary" style="margin-right: 30px;margin-bottom: 20px;"
|
||||||
|
@click="doNewsPublishFn(data, 1)">撤稿</el-button>
|
||||||
|
|
||||||
|
|
||||||
|
<el-button type="primary" @click="doNewCheckFn(data)"
|
||||||
|
v-if="data?.status != 2 && !form.deleted && Session.get('userInfoLocal').userType == '02'">复审</el-button>
|
||||||
|
|
||||||
|
<el-button type="primary" @click="submit(0, false)"
|
||||||
|
v-if="data?.status != 2 && !form.deleted && Session.get('userInfoLocal').userType != '02'">
|
||||||
<text v-if="Session.get('userInfoLocal').userType == '00'">送审</text>
|
<text v-if="Session.get('userInfoLocal').userType == '00'">送审</text>
|
||||||
<text v-if="Session.get('userInfoLocal').userType == '01'">发布</text>
|
<text v-if="Session.get('userInfoLocal').userType == '01'">发布</text>
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button type="danger"
|
||||||
|
v-if="Session.get('userInfoLocal').userType == '02' && (data?.status == 3 || data?.status == 4)"
|
||||||
|
@click="doNewReturnFn(data)">退改</el-button>
|
||||||
|
|
||||||
|
<el-button type="danger" v-if="Session.get('userInfoLocal').userType == '01' && (data?.status == 4)"
|
||||||
|
@click="doNewReturnFn(data)">退改</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-button v-if="data?.status == 2 && !form.deleted && Session.get('userInfoLocal').userType == '01'"
|
|
||||||
type="primary" style="margin-right: 30px;margin-bottom: 20px;"
|
|
||||||
@click="doNewsPublishFn(data, 1)">撤稿</el-button>
|
|
||||||
</template>
|
</template>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -150,6 +194,7 @@ import icon_ai from '/@/components/icon_ai.vue';
|
||||||
import translate from '/@/components/translate/translate.vue';
|
import translate from '/@/components/translate/translate.vue';
|
||||||
import { Session } from '/@/utils/storage';
|
import { Session } from '/@/utils/storage';
|
||||||
import { isMobileByWidth } from '/@/utils/Utils'
|
import { isMobileByWidth } from '/@/utils/Utils'
|
||||||
|
import { doNewReturn, doNewCheck } from '/@/api/api';
|
||||||
|
|
||||||
|
|
||||||
const emit = defineEmits(['doNewsPublishFn', 'handleEditStatus', 'doDeleteNewsFn', 'getData']);
|
const emit = defineEmits(['doNewsPublishFn', 'handleEditStatus', 'doDeleteNewsFn', 'getData']);
|
||||||
|
|
@ -334,6 +379,27 @@ watch(
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// 退改
|
||||||
|
async function doNewReturnFn(item) {
|
||||||
|
let { code, data } = await doNewReturn({
|
||||||
|
id: item.id,
|
||||||
|
});
|
||||||
|
if (code == 200) {
|
||||||
|
ElMessage.success('操作成功');
|
||||||
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 复审
|
||||||
|
async function doNewCheckFn(item) {
|
||||||
|
let { code, data } = await doNewCheck({
|
||||||
|
id: item.id,
|
||||||
|
});
|
||||||
|
if (code == 200) {
|
||||||
|
ElMessage.success('操作成功');
|
||||||
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const pictureTemp = ref([]);
|
const pictureTemp = ref([]);
|
||||||
/**
|
/**
|
||||||
* 提交创建
|
* 提交创建
|
||||||
|
|
|
||||||
|
|
@ -193,6 +193,9 @@
|
||||||
@click="doDeleteNewsFn(scope.row)">删除</el-button>
|
@click="doDeleteNewsFn(scope.row)">删除</el-button>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="Session.get('userInfoLocal').userType == '02'">
|
<div v-if="Session.get('userInfoLocal').userType == '02'">
|
||||||
|
<el-button v-if="scope.row.status == 4" type="text"
|
||||||
|
@click="doApprovalFn(scope.row, scope.row.status)">撤审</el-button>
|
||||||
|
|
||||||
<!-- 二审账号 -->
|
<!-- 二审账号 -->
|
||||||
<el-button v-if="scope.row.status == 3" type="text" style="color: #ff1818"
|
<el-button v-if="scope.row.status == 3" type="text" style="color: #ff1818"
|
||||||
@click="doNewReturnFn(scope.row)">退改</el-button>
|
@click="doNewReturnFn(scope.row)">退改</el-button>
|
||||||
|
|
@ -202,6 +205,9 @@
|
||||||
|
|
||||||
<el-button v-if="scope.row.status == 3" type="text"
|
<el-button v-if="scope.row.status == 3" type="text"
|
||||||
@click="doNewCheckFn(scope.row)">复审</el-button>
|
@click="doNewCheckFn(scope.row)">复审</el-button>
|
||||||
|
|
||||||
|
<el-button type="text" v-if="scope.row.status == 4"
|
||||||
|
@click="doNewsPublishFn(scope.row, 2)">发布</el-button>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="Session.get('userInfoLocal').userType == '01'">
|
<div v-if="Session.get('userInfoLocal').userType == '01'">
|
||||||
<!-- 终审账号 -->
|
<!-- 终审账号 -->
|
||||||
|
|
@ -457,7 +463,7 @@ async function getData() {
|
||||||
|
|
||||||
async function doApprovalFn(item, status) {
|
async function doApprovalFn(item, status) {
|
||||||
let str = '确认初审完成并提交复核?送审后不支持再次编辑';
|
let str = '确认初审完成并提交复核?送审后不支持再次编辑';
|
||||||
if (status == 3) {
|
if (status == 3 || status == 4) {
|
||||||
str = '确认撤销该篇资讯审核?';
|
str = '确认撤销该篇资讯审核?';
|
||||||
} else {
|
} else {
|
||||||
str = '确认初审完成并提交复核?送审后不支持再次编辑';
|
str = '确认初审完成并提交复核?送审后不支持再次编辑';
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue