This commit is contained in:
2025-06-03 09:22:40 +08:00
parent 94ab97b501
commit 5f50e448cb
6 changed files with 225 additions and 194 deletions

View File

@@ -24,31 +24,33 @@
<!-- 调查与撤回 -->
<!-- <p @click="tabIndex(4)" :class="activeIndex == 4 ? 'tab_Normal tab_Select' : 'tab_Normal'">Investigte and
Retrace</p> -->
<br clear="both">
<br clear="both" />
</div>
<div class="container">
<articleListA v-if="activeIndex=='1'"></articleListA>
<articleListB v-if="activeIndex=='2'" @changeEvent="changeEvent"></articleListB>
<articleListC v-if="activeIndex=='3'"></articleListC>
<div class="container" style="padding: 20px 15px">
<articleListA v-if="activeIndex == '1'" :journals="journals[0]"></articleListA>
<articleListB v-if="activeIndex == '2'" :journals="journals[1]" @changeEvent="changeEvent"></articleListB>
<articleListC v-if="activeIndex == '3'" :journals="journals[0]"></articleListC>
<articleListD v-if="activeIndex == '4'" ></articleListD>
<articleListE v-if="activeIndex=='5'"></articleListE>
<articleListE v-if="activeIndex == '5'" :journals="journals[2]"></articleListE>
<articleListF v-if="activeIndex == '6'" ></articleListF>
</div>
</div>
</template>
<script>
import articleListA from './articleListEditor_A'
import articleListB from './articleListEditor_B'
import articleListC from './articleListEditor_C'
import articleListD from './articleListEditor_D'
import articleListE from './articleListEditor_E'
import articleListF from './articleListEditor_F'
import articleListA from './articleListEditor_A';
import articleListB from './articleListEditor_B';
import articleListC from './articleListEditor_C';
import articleListD from './articleListEditor_D';
import articleListE from './articleListEditor_E';
import articleListF from './articleListEditor_F';
export default {
name: 'articleListEditor',
data() {
return {
activeIndex: 1,
journals: [],
preJouList: false
};
},
@@ -58,45 +60,94 @@
articleListC,
articleListD,
articleListE,
articleListF,
articleListF
},
created() {
this.getDate();
async created() {
await this.initJournal();
// await this.getDate();
if (localStorage.getItem('U_point') != null) {
this.activeIndex = localStorage.getItem('U_point')
localStorage.removeItem('U_point')
this.activeIndex = localStorage.getItem('U_point');
localStorage.removeItem('U_point');
}
},
activated() {
this.getDate();
async activated() {
await this.initJournal();
// await this.getDate();
},
methods: {
async initJournal() {
[1, 2, 4].forEach(async (e, i) => {
this.$set(this.journals, i, await this.initselect(e)); // 使用 Vue.set 确保数据是响应式的
console.log('this.journals at line 80:', this.journals)
});
},
async initselect(e) {
var url = '';
var data = {};
switch (e) {
case 1:
case 3:
case 5:
url = 'api/Article/getJournal';
data = {
username: localStorage.getItem('U_name')
};
break;
case 2:
url = 'api/Article/getJournalOutLx';
data = {
editor_id: localStorage.getItem('U_id')
};
break;
case 4:
url = 'api/Article/getContinuityJournals';
data = {
editor_id: localStorage.getItem('U_id')
};
break;
}
try {
const res = await this.$api.post(url, {...data });
if(e==4){
return res.data.journals; // 返回数据
}else{
return res; // 返回数据
}
} catch (error) {
console.error('Error fetching data:', error);
return []; // 如果发生错误,返回空数组
}
},
// 获取数据
getDate() {
// 连续出刊是否展示
this.$api
.post('api/Article/getContinuityJournals', {
'editor_id': localStorage.getItem('U_id')
editor_id: localStorage.getItem('U_id')
})
.then(res => {
.then((res) => {
if (res.data.journals.length > 0) {
this.preJouList = true
this.preJouList = true;
}
})
.catch(err => {
.catch((err) => {
console.log(err);
});
},
// 点击切换
tabIndex(e) {
this.activeIndex = e
this.activeIndex = e;
},
// 获取子级的切换
changeEvent(e) {
this.tabIndex(e)
},
this.tabIndex(e);
}
}
};
</script>
@@ -112,15 +163,14 @@
border-top: 3px solid #fff;
border-bottom: none;
float: left;
margin: 10px 0 -1px 0;
padding: 20px 30px;
margin: 0px 0 -1px 0;
padding: 16px 30px;
cursor: pointer;
background-color: #fafafa;
}
.tab_Normal:hover {
text-decoration: underline;
}
.tab_Select {
@@ -130,5 +180,6 @@
border-bottom: 1px solid #fff;
}
.tab_Select:hover {}
.tab_Select:hover {
}
</style>

View File

@@ -34,7 +34,7 @@
</el-select> -->
<el-select v-model="query.journal" @change="chageJour" placeholder="Please select journal">
<el-option :key="0" label="All journals" :value="0"></el-option>
<el-option v-for="item in items" :key="item.journal_id" :label="item.title" :value="item.journal_id"> </el-option>
<el-option v-for="item in journals" :key="item.journal_id" :label="item.title" :value="item.journal_id"> </el-option>
</el-select>
<p style="height: 5px"></p>
@@ -1209,6 +1209,7 @@ export default {
components: {
timetalk
},
props:['journals'],
data() {
return {
isShowAI: false,
@@ -1218,7 +1219,7 @@ export default {
curState: null,
baseUrl: this.Common.baseUrl,
mediaUrl: this.Common.mediaUrl,
items: '',
currentTabIndex: 0,
currentTabName: '',
HIndexList: [
@@ -1321,7 +1322,7 @@ export default {
Hindex: 0
},
guestList: [],
journals: [],
// journals: [],
journalTran: [],
nextState: [
{
@@ -1359,7 +1360,7 @@ export default {
};
},
created() {
this.initselect();
this.getdate();
},
computed: {
@@ -1480,20 +1481,7 @@ export default {
}
return str;
},
//初始化期刊选项
initselect() {
this.$api
.post('api/Article/getJournal', {
username: this.query.username
})
.then((res) => {
this.items = res;
this.journals = res;
})
.catch((err) => {
console.log(err);
});
},
// 创建复审
crateRevision(item) {
// 二次询问
@@ -2588,7 +2576,7 @@ export default {
color: #333;
margin: 0 0 20px 0;
font-size: 14px;
padding: 20px;
padding:10px 20px;
border-radius: 5px;
border: 1px solid #ebeef5;
background-color: #fff;
@@ -2605,7 +2593,7 @@ export default {
}
.mangu_list > div {
margin-bottom: 8px;
/* margin-bottom: 8px; */
}
.mangu_list .man_title {
@@ -2692,7 +2680,7 @@ export default {
.mangu_list .fixCard {
text-align: center;
background: #0066990d;
padding: 20px;
padding:14px 20px;
}
.gugeList {

View File

@@ -4,7 +4,7 @@
<el-select v-model="queryType.journal_id" @change="getDateType" placeholder="Please select journal"
style="width: 300px;">
<el-option :key="0" label="All journals" :value="0"></el-option>
<el-option v-for="item in journalList" :key="item.journal_id" :label="item.title"
<el-option v-for="item in journals" :key="item.journal_id" :label="item.title"
:value="item.journal_id"></el-option>
</el-select>
</div>
@@ -85,6 +85,7 @@
Loading
} from 'element-ui';
export default {
props: ['journals'],
data() {
return {
baseUrl: this.Common.baseUrl,
@@ -110,23 +111,12 @@
};
},
created() {
this.initSelect();
// this.initSelect();
this.getDateType();
},
methods: {
//初始化期刊
initSelect() {
this.$api
.post('api/Article/getJournalOutLx', {
'editor_id': this.queryType.editor_id
})
.then(res => {
this.journalList = res;
})
.catch(err => {
console.log(err);
});
},
// 初始化列表
getDateType() {
const loading = this.$loading({

View File

@@ -2,7 +2,7 @@
<div>
<div class="handle-box">
<el-select v-model="query.issn" @change="selectJournal" placeholder="Please select journal" style="width: 500px">
<el-option v-for="item in jourList" :key="item.issn" :label="item.title" :value="item.issn">
<el-option v-for="item in journals" :key="item.issn" :label="item.title" :value="item.issn">
<span style="float: left">{{ item.title }}</span>
<span
style="
@@ -178,6 +178,7 @@ export default {
commonOnlineOperations
},
props: ['journals'],
data() {
return {
baseUrl: this.Common.baseUrl,
@@ -189,7 +190,7 @@ export default {
currentJournal: {},
sortForm: {},
tableData: [],
jourList: [],
pubVisible: false,
sortVisible: false,
re_finsh: 1,
@@ -263,24 +264,31 @@ export default {
},
// 获取数据
getDate() {
console.log('at line 189:', localStorage.getItem('U_pointJour'));
this.$api
.post('api/Article/getJournal', {
username: this.query.username
})
.then((res) => {
this.jourList = res;
if (localStorage.getItem('U_pointJour') == null) {
this.query.issn = this.jourList[0].issn;
// console.log('at line 189:', localStorage.getItem('U_pointJour'));
// this.$api
// .post('api/Article/getJournal', {
// username: this.query.username
// })
// .then((res) => {
// this.jourList = res;
this.currentJournal = this.jourList[0];
// })
// .catch((err) => {
// console.log(err);
// });
if (localStorage.getItem('U_pointJour') == null) {
this.query.issn = this.journals[0].issn;
this.currentJournal = this.journals[0];
if (this.currentJournal.cycle != 0) {
this.getNoralDate();
} else {
this.getNoralDate0();
}
} else {
var info = this.jourList.find((e) => e.journal_id == localStorage.getItem('U_pointJour'));
var info = this.journals.find((e) => e.journal_id == localStorage.getItem('U_pointJour'));
this.query.issn = info.issn;
if (this.currentJournal.cycle != 0) {
this.getNoralDate();
@@ -288,15 +296,11 @@ export default {
this.getNoralDate0();
}
}
})
.catch((err) => {
console.log(err);
});
},
selectJournal(v) {
console.log('e at line 155:', v);
this.tableData = [];
this.currentJournal = this.jourList.find((e) => e.issn == v);
this.currentJournal = this.journals.find((e) => e.issn == v);
if (this.currentJournal.cycle != 0) {
this.getNoralDate();

View File

@@ -3,7 +3,7 @@
<div class="handle-box">
<el-select v-model="queryType.journal_id" @change="getDateType" placeholder="Please select journal"
style="width: 300px;">
<el-option v-for="item in journalList" :key="item.journal_id" :label="item.title"
<el-option v-for="item in journals" :key="item.journal_id" :label="item.title"
:value="item.journal_id"></el-option>
</el-select>
</div>
@@ -84,12 +84,13 @@
Loading
} from 'element-ui';
export default {
props: ['journals'],
data() {
return {
baseUrl: this.Common.baseUrl,
mediaUrl: this.Common.mediaUrl,
uploadUrl: '/tsfile/',
journalList: [],
queryType: {
username: localStorage.getItem('U_name'),
editor_id: localStorage.getItem('U_id'),
@@ -113,20 +114,13 @@
methods: {
//初始化期刊
initSelect() {
this.$api
.post('api/Article/getContinuityJournals', {
'editor_id': this.queryType.editor_id
})
.then(res => {
this.journalList = res.data.journals;
if (this.journalList.length > 0) {
this.queryType.journal_id = this.journalList[0].journal_id
if (this.journals.length > 0) {
this.queryType.journal_id = this.journals[0].journal_id
this.getDateType();
}
})
.catch(err => {
console.log(err);
});
},
// 初始化列表
getDateType() {

View File

@@ -2,7 +2,7 @@
<div>
<div class="handle-box">
<el-select v-model="queryType.issn" @change="getJourChange" placeholder="Please select a journal" style="width: 250px">
<el-option v-for="item in journalList" :key="item.issn" :label="item.title" :value="item.issn"> </el-option>
<el-option v-for="item in journals" :key="item.issn" :label="item.title" :value="item.issn"> </el-option>
</el-select>
<el-select
v-model="queryType.journal_stage_id"
@@ -475,6 +475,7 @@ import commonOnlineOperations from '@/components/page/components/article/onlineO
import { Loading } from 'element-ui';
import { watch } from 'vue';
export default {
props: ['journals'],
components: {
commonOnlineOperations
},
@@ -545,7 +546,7 @@ export default {
Total: 0,
dataTable: [],
stageList: [],
journalList: [],
guestList: [],
EditMes: {
journal_special_id: 0,
@@ -733,19 +734,22 @@ export default {
//初始化期刊分期
getJourDate() {
this.$api
.post('api/Article/getJournal', {
username: this.username
})
.then((res) => {
this.journalList = res;
this.queryType.issn = res[0].issn;
// this.$api
// .post('api/Article/getJournal', {
// username: this.username
// })
// .then((res) => {
// this.journalList = res;
if(this.journals.length > 0){
this.queryType.issn = this.journals[0].issn;this.getStageDate();
}
this.getStageDate();
})
.catch((err) => {
console.log(err);
});
//
// })
// .catch((err) => {
// console.log(err);
// });
},
//选择期刊