|
@@ -62,9 +62,9 @@ export class TextbookComponent implements OnInit {
|
|
|
star: false, //加入推荐
|
|
|
remove: false, //移除推荐
|
|
|
submit: false, //提交
|
|
|
- export:false,
|
|
|
+ export: false,
|
|
|
verify: false, //提交推荐权限
|
|
|
- restore:false, //恢复教材
|
|
|
+ restore: false, //恢复教材
|
|
|
},
|
|
|
};
|
|
|
listOfColumns: any = {
|
|
@@ -78,7 +78,7 @@ export class TextbookComponent implements OnInit {
|
|
|
onChange: (data: any) => {
|
|
|
console.log(data);
|
|
|
this.filters.lang.value = data;
|
|
|
- this.onFilter()
|
|
|
+ this.onFilter();
|
|
|
},
|
|
|
},
|
|
|
majorPoniter: {
|
|
@@ -86,7 +86,7 @@ export class TextbookComponent implements OnInit {
|
|
|
onChange: (data: any) => {
|
|
|
console.log(data);
|
|
|
this.filters.majorPoniter.value = data;
|
|
|
- this.onFilter()
|
|
|
+ this.onFilter();
|
|
|
},
|
|
|
},
|
|
|
editionUnit: {
|
|
@@ -94,23 +94,24 @@ export class TextbookComponent implements OnInit {
|
|
|
onChange: (data: any) => {
|
|
|
console.log(data);
|
|
|
this.filters.editionUnit.value = data;
|
|
|
- this.onFilter()
|
|
|
+ this.onFilter();
|
|
|
},
|
|
|
},
|
|
|
approval: {
|
|
|
listOfFilter: [
|
|
|
{
|
|
|
- value: '基础学科“101计划”核心教材',
|
|
|
- text: '基础学科“101计划”核心教材',
|
|
|
+ value: '经中央有关部门审定的教材',
|
|
|
+ text: '经中央有关部门审定的教材',
|
|
|
},
|
|
|
- { value: '战略性新兴领域教材', text: '战略性新兴领域教材' },
|
|
|
- { value: '“四新”重点建设教材', text: '“四新”重点建设教材' },
|
|
|
+ { value: '首届全国教材建设奖优秀教材(高等教育类)教材', text: '首届全国教材建设奖优秀教材(高等教育类)教材' },
|
|
|
+ { value: '“101计划”核心教材', text: '“101计划”核心教材' },
|
|
|
+ { value: '“四新”重点建设教材(含战略性新兴领域教材)', text: '“四新”重点建设教材(含战略性新兴领域教材)' },
|
|
|
{ value: '否', text: '否' },
|
|
|
],
|
|
|
onChange: (data: any) => {
|
|
|
console.log(data);
|
|
|
this.filters.approval.value = data;
|
|
|
- this.onFilter()
|
|
|
+ this.onFilter();
|
|
|
},
|
|
|
},
|
|
|
carrierShape: {
|
|
@@ -122,7 +123,7 @@ export class TextbookComponent implements OnInit {
|
|
|
onChange: (data: any) => {
|
|
|
console.log(data);
|
|
|
this.filters.carrierShape.value = data;
|
|
|
- this.onFilter()
|
|
|
+ this.onFilter();
|
|
|
},
|
|
|
},
|
|
|
department: {
|
|
@@ -130,7 +131,7 @@ export class TextbookComponent implements OnInit {
|
|
|
onChange: (data: any) => {
|
|
|
console.log(data);
|
|
|
this.filters.department.value = data;
|
|
|
- this.onFilter()
|
|
|
+ this.onFilter();
|
|
|
},
|
|
|
},
|
|
|
};
|
|
@@ -272,10 +273,10 @@ export class TextbookComponent implements OnInit {
|
|
|
return arr;
|
|
|
}
|
|
|
//筛选
|
|
|
- onFilter(){
|
|
|
- this.textbookList = []
|
|
|
- this.pageIndex = 1
|
|
|
- this.getTextbook(this.searchValue)
|
|
|
+ onFilter() {
|
|
|
+ this.textbookList = [];
|
|
|
+ this.pageIndex = 1;
|
|
|
+ this.getTextbook(this.searchValue);
|
|
|
}
|
|
|
onSearch(e: string) {
|
|
|
console.log(e);
|
|
@@ -386,9 +387,9 @@ export class TextbookComponent implements OnInit {
|
|
|
}
|
|
|
//加入/移除推荐
|
|
|
updateStatus(data?: Parse.Object, recommend?: boolean) {
|
|
|
- if(this.eduProcess?.get('status') != '200'){
|
|
|
- this.message.warning('当前流程状态非遴选中,不可此操作')
|
|
|
- return
|
|
|
+ if (this.eduProcess?.get('status') != '200') {
|
|
|
+ this.message.warning('当前流程状态非遴选中,不可此操作');
|
|
|
+ return;
|
|
|
}
|
|
|
this.modal.confirm({
|
|
|
nzTitle: `${recommend ? '加入' : '移除'}推荐`,
|
|
@@ -420,7 +421,7 @@ export class TextbookComponent implements OnInit {
|
|
|
nzCancelText: '取消',
|
|
|
nzOnCancel: () => console.log('Cancel'),
|
|
|
});
|
|
|
- if(this.filterObj?.btns?.verify){
|
|
|
+ if (this.filterObj?.btns?.verify) {
|
|
|
history.go();
|
|
|
}
|
|
|
}
|
|
@@ -467,15 +468,16 @@ export class TextbookComponent implements OnInit {
|
|
|
}
|
|
|
await data.save();
|
|
|
} else {
|
|
|
- let count = 0;
|
|
|
+ let count = 0,
|
|
|
+ failCount = 0;
|
|
|
let selectedList = this.textbookList.filter((item: any) =>
|
|
|
this.setOfCheckedId.has(item?.id)
|
|
|
);
|
|
|
let deletePromiseList = selectedList.map((item: any) => {
|
|
|
return new Promise((resolve) => {
|
|
|
if (
|
|
|
- data?.get('status') == '102' ||
|
|
|
- data?.get('status') == '300'
|
|
|
+ item?.get('status') == '102' ||
|
|
|
+ item?.get('status') == '300'
|
|
|
) {
|
|
|
count++;
|
|
|
let t =
|
|
@@ -498,13 +500,26 @@ export class TextbookComponent implements OnInit {
|
|
|
}
|
|
|
item.save().then(() => resolve(true));
|
|
|
} else {
|
|
|
+ failCount++;
|
|
|
resolve(true);
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
try {
|
|
|
await Promise.all(deletePromiseList);
|
|
|
- this.message.success('成功提交' + count + '条教材');
|
|
|
+ failCount > 0
|
|
|
+ ? this.message.success(
|
|
|
+ '已提交' +
|
|
|
+ count +
|
|
|
+ '条教材,' +
|
|
|
+ failCount +
|
|
|
+ '条教材提交失败,请检查必填信息是否完整'
|
|
|
+ )
|
|
|
+ : this.message.success('已提交' +
|
|
|
+ count +
|
|
|
+ '条教材,' +
|
|
|
+ failCount +
|
|
|
+ '条教材提交失败');
|
|
|
this.onAllChecked(false);
|
|
|
} catch (err) {}
|
|
|
}
|
|
@@ -527,7 +542,7 @@ export class TextbookComponent implements OnInit {
|
|
|
data.set('discard', null);
|
|
|
data.set('code', null);
|
|
|
await data.save();
|
|
|
- } else {
|
|
|
+ } else {
|
|
|
let selectedList = this.textbookList.filter((item: any) =>
|
|
|
this.setOfCheckedId.has(item?.id)
|
|
|
);
|
|
@@ -556,14 +571,16 @@ export class TextbookComponent implements OnInit {
|
|
|
query.lessThanOrEqualTo('startDate', new Date());
|
|
|
query.greaterThan('deadline', new Date());
|
|
|
query.notEqualTo('isDeleted', true);
|
|
|
- query.containedIn('status', ['200','300']);
|
|
|
+ query.containedIn('status', ['200', '300']);
|
|
|
query.select('objectId');
|
|
|
let res = await query.first();
|
|
|
return res?.id;
|
|
|
}
|
|
|
//导出
|
|
|
- async exportProcess(data?:Parse.Object){
|
|
|
- let processId = await this.getEduProcess(this.tbookSer.profile.user?.department?.objectId);
|
|
|
+ async exportProcess(data?: Parse.Object) {
|
|
|
+ let processId = await this.getEduProcess(
|
|
|
+ this.tbookSer.profile.user?.department?.objectId
|
|
|
+ );
|
|
|
Parse.Cloud.run('tbookExportReport', { processId: processId }).then(
|
|
|
(data) => {
|
|
|
console.log(data);
|