Просмотр исходного кода

Merge branch 'master' of http://git.fmode.cn:3000/bin/edu-textbook

xll 7 месяцев назад
Родитель
Сommit
4357feb632

+ 10 - 6
projects/textbook/src/app/textbook/textbook.component.ts

@@ -65,7 +65,7 @@ export class TextbookComponent implements OnInit {
       remove: false, //移除推荐
       submit: false, //提交
       beforSubmit: false, //高校联系人提交至工作联系人
-      export: false,
+      export: false,//导出附件
       verify: false, //提交推荐权限
       restore: false, //恢复教材
     },
@@ -497,7 +497,7 @@ export class TextbookComponent implements OnInit {
     }
     this.modal.confirm({
       nzTitle: '确认提交教材?',
-      nzContent: `提交后,教材将不可编辑,并从「我的教材」移至「已提交评审教材」。`,
+      nzContent: `申报书及附件已经提交,请务必确保函报材料与系统填报材料保持一致,否则不予受理`,
       nzOkText: '确认',
       nzOkType: 'primary',
       nzOkDanger: false,
@@ -507,12 +507,14 @@ export class TextbookComponent implements OnInit {
             this.message.warning('教材信息填写不完整');
             return;
           }
-          let t =
+          if(!data?.get('code')){
+            let t =
             this.tbookSer.formatTime('YYYYmmdd', new Date()) +
             Math.random().toString().slice(-4);
+            data.set('code', t);
+          }
           data.set('render', true);
           data.set('status', status);
-          data.set('code', t);
           data.set('eduProcess', {
             __type: 'Pointer',
             className: 'EduProcess',
@@ -540,12 +542,14 @@ export class TextbookComponent implements OnInit {
                 item?.get('status') == '300'
               ) {
                 count++;
-                let t =
+                if(!item?.get('code')){
+                  let t =
                   this.tbookSer.formatTime('YYYYmmdd', new Date()) +
                   Math.random().toString().slice(-4);
+                  item.set('code', t);
+                }
                 item.set('render', true);
                 item.set('status', status);
-                item.set('code', t);
                 item.set('eduProcess', {
                   __type: 'Pointer',
                   className: 'EduProcess',

+ 6 - 0
projects/textbook/src/modules/nav-author/components/basic-in/basic-in.component.ts

@@ -141,6 +141,12 @@ export class BasicInComponent implements OnInit {
     // this.eduTextbook?.set('CIPImgUrl', params.CIPImgUrl);
     this.eduTextbook?.set('approvedImgUrl', params.approvedImgUrl)
     this.eduTextbook?.set('unitType', params.unitType)
+    if(!this.eduTextbook?.get('code')){
+      let t =
+      this.tbookSer.formatTime('YYYYmmdd', new Date()) +
+      Math.random().toString().slice(-4);
+      this.eduTextbook.set('code', t);
+    }
     await this.eduTextbook?.save();
     this.saveEduTextbookVolume()
     return

+ 20 - 0
projects/textbook/src/modules/nav-author/space/space.component.html

@@ -28,6 +28,17 @@
   <div class="space-content">
     <nz-tabset [(nzSelectedIndex)]="active">
       <nz-tab nzTitle="我的教材">
+        <div class="tips">
+          <span
+            style="color: #3e49b3"
+            nz-icon
+            nzType="info-circle"
+            nzTheme="fill"
+          ></span
+          >{{ eduProcess?.get("name") }}遴选将于
+          {{ eduProcess?.get('deadline') | date : "yyyy-MM-dd hh:mm" }}
+          截止报送,请及时提交需要参与遴选的教材
+        </div>
         @if (active == 0) {
         <!-- <app-page-textbook></app-page-textbook> -->
         <app-textbook
@@ -38,6 +49,15 @@
         }
       </nz-tab>
       <nz-tab nzTitle="已提交评审教材">
+        <div class="tips">
+          <span
+            style="color: #3e49b3"
+            nz-icon
+            nzType="info-circle"
+            nzTheme="fill"
+          ></span
+          >请在获得推荐资质后根据相关要求做好联系出版社上传教材等准备工作;并提醒、确认相应出版社到申报系统申请工作联系人账号
+        </div>
         @if (active == 1) {
         <!-- <app-page-textbook [render]="true"></app-page-textbook> -->
         <app-textbook

+ 6 - 0
projects/textbook/src/modules/nav-author/space/space.component.scss

@@ -27,6 +27,12 @@
     margin: 20px 0;
   }
 }
+.tips{
+  padding: 20px;
+  background: #3e49b324;
+  border-radius: 4px;
+  margin-bottom: 10px;
+}
 ::ng-deep .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{
   color: #c6233f;
 }

+ 25 - 2
projects/textbook/src/modules/nav-author/space/space.component.ts

@@ -6,6 +6,8 @@ import { NzTabsModule } from 'ng-zorro-antd/tabs';
 import { PageTextbookComponent } from '../components/page-textbook/page-textbook.component';
 import { textbookServer } from '../../../services/textbook';
 import { TextbookComponent } from '../../../app/textbook/textbook.component';
+import { DatePipe } from '@angular/common';
+
 @Component({
   selector: 'app-space',
   standalone: true,
@@ -14,9 +16,11 @@ import { TextbookComponent } from '../../../app/textbook/textbook.component';
     NzTabsModule,
     PageTextbookComponent,
     TextbookComponent,
+    DatePipe,
   ],
   templateUrl: './space.component.html',
   styleUrls: ['./space.component.scss'],
+  providers: [DatePipe],
 })
 export class SpaceComponent implements OnInit {
   user: Parse.Object | any = Parse.User.current();
@@ -26,6 +30,7 @@ export class SpaceComponent implements OnInit {
     status:['101','102','300'],
     btns:{
       edit:true,//编辑
+      export:true,
       isDelete:true, //删除权限
       submit:true //提交
     }
@@ -36,10 +41,28 @@ export class SpaceComponent implements OnInit {
       review:true,//查阅
     }
   }
-  constructor(private router: Router, public tbookSer: textbookServer) {}
+  eduProcess?:Parse.Object
 
-  ngOnInit() {}
+  constructor(private router: Router, public tbookSer: textbookServer) {}
 
+  async ngOnInit() {
+    let parentMap = await this.tbookSer.formatNode(
+      this.tbookSer?.profile?.user?.department?.objectId
+    );
+    console.log(parentMap);
+    await this.getEduProcess(parentMap[1]?.key);
+  }
+  async getEduProcess(id: string){
+    if (!id) return;
+    let query = new Parse.Query('EduProcess');
+    query.equalTo('department', id);
+    // query.lessThanOrEqualTo('startDate', new Date());
+    // query.greaterThan('deadline', new Date());
+    query.notEqualTo('isDeleted', true);
+    query.containedIn('status', ['200', '300']);
+    let res = await query.first();
+    this.eduProcess = res
+  }
   goUrl(url: string, params?: object | any) {
     console.log(url);
     if (params) {