chenc 3 years ago
parent
commit
644979bebf

+ 17 - 1
src/app/entity/fbs/fbs-abnormal-working-hours.ts

@@ -120,7 +120,22 @@ export class FbsAbnormalWorkingHours extends Page{
 	//类型id
 	typeId?:string;
 	//类型名称
-	typeName?:string;;
+	typeName?:string;
+
+	//无效工时
+	invalidWork?:number;
+	//异常工时
+	abnormalWorkingHours?:number
+	//设计
+	anomalyClassification1?:number
+	//物料
+	anomalyClassification2?:number
+	//计划
+	anomalyClassification3?:number
+	//制程
+	anomalyClassification4?:number
+	//其他
+	anomalyClassification5?:number
 
 	//异常工时描述集合
 	fbsAbnormalWorkingHoursDescribeList?:any[];
@@ -129,5 +144,6 @@ export class FbsAbnormalWorkingHours extends Page{
 	fbsAbnormalWorkingHoursTypeList?:any[];
 
 	fbsAbnormalWorkingHoursList?:FbsAbnormalWorkingHours[];
+
 }
 

+ 1 - 0
src/app/entity/fbs/fbs-working-statistics.ts

@@ -61,4 +61,5 @@ export class FbsWorkingStatistics extends Page{
 	projectName?:string;//项目名称
 	workCenter?:string;//工作中心
 	fbsTechnologicalProcessItemName?:string;//工艺名称
+	efficiency?:number;//效率
 }

+ 2 - 2
src/app/routes/dashboard/analysis/analysis.component.html

@@ -345,9 +345,9 @@
             <td nzAlign="center">{{abnormalWorkingHours.other}}</td>
             <td nzAlign="center" style="font-weight:bolder" colSpan="2">月异常工时</td>
             <td nzAlign="center">{{abnormalWorkingHours.quality}}</td>
-            <td nzAlign="center" style="font-weight:bolder">月仓库工时</td>
+            <td nzAlign="center" colSpan="2" style="font-weight:bolder">月仓库工时</td>
             <td nzAlign="center">{{abnormalWorkingHours.plan}}</td>
-            <td nzAlign="center" colSpan="3"></td>
+            <td nzAlign="center" colSpan="2"></td>
           </tr>
           <!-- <tr>
             <td  nzLeft="0px"></td>

+ 14 - 5
src/app/routes/dashboard/analysis/analysis.component.ts

@@ -446,16 +446,20 @@ export class DashboardAnalysisComponent implements OnInit {
     // this.exportLoading=true;
     let data = [];
     let title = [
+      ['项目编码'], // 项目编码
       ['项目名称'], // 项目名称
+      ['工作中心'], // 工作中心
       ['生产订单号'], // 生产订单号
       ['物料编码'], // 物料编码
       ['物料名称'], // 物料名称
-      ['计划数量'], // 月度计划
-      ['标准工时'], // 标准工时
+      ['数量'], // 数量
       ['完成数量'], // 累计完成数量
+      ['剩余数量'], // 剩余
+      ['标准工时'], // 标准工时
       ['实际工时'], // 累计完成工时
       ['计划达成率'], // 计划达成率
       ['计划生产效率'], // 计划生产效率
+      ['计划开完工时间']
     ];
     data.push(title);
     this.listOfData.forEach(element => {
@@ -464,16 +468,21 @@ export class DashboardAnalysisComponent implements OnInit {
         row.push("标准总工时")
         row.push(element.standardWorkingHoursTotal)
         element.product="统计";
+        row.push("")
+        row.push("")
       }else{
+        row.push(element.costItemCode)
         row.push(element.projectName)
+        row.push(element.workCenter)
         row.push(element.productionOrderNumberName)
       }
       
       row.push(element.productId)
       row.push(element.product)
-      row.push(convertingNumbers(element.surplusNumberOfTasksTotal))//numberOfTasksTotal
-      row.push(convertingNumbers(element.surplusStandardWorkingHoursTotal))//standardWorkingHoursTotal
+      row.push(convertingNumbers(element.numberOfTasksTotal))//
       row.push(element.quantityCompletedTotal)//quantityCompletedTotal//latestCompletedQuantity
+      row.push(convertingNumbers(element.surplusNumberOfTasksTotal))//numberOfTasksTotal
+      row.push(convertingNumbers(element.standardWorkingHoursTotal))//standardWorkingHoursTotal
       row.push(convertingNumbers(element.manHoursCompletedTotal))
       if(element.projectName!="统计"){
         row.push(element.achievementRate+"%")
@@ -483,7 +492,7 @@ export class DashboardAnalysisComponent implements OnInit {
           row.push("0.0%")
         }
       }
-
+      row.push(element.startDate+"至"+element.dueDate)
       
       
       data.push(row);

+ 1 - 1
src/app/routes/efficiency-report/list/list.component.html

@@ -1,6 +1,6 @@
 <page-header [action]="phActionTpl">
   <ng-template #phActionTpl>
-    <!-- <button (click)="add()" nz-button nzType="primary">新建</button> -->
+    <button (click)="export()" nz-button nzType="primary" [nzLoading]="exportLoading">导出</button>
   </ng-template>
 </page-header>
 <nz-card>

+ 75 - 2
src/app/routes/efficiency-report/list/list.component.ts

@@ -1,12 +1,13 @@
 import { Component, OnInit, ViewChild } from '@angular/core';
 import { _HttpClient, ModalHelper } from '@delon/theme';
-import { STColumn, STComponent } from '@delon/abc';
+import { STColumn, STComponent, XlsxService } from '@delon/abc';
 import { SFSchema } from '@delon/form';
 import { FbsWorkingStatisticsService } from 'app/services/fbs/fbs-working-statistics.service';
 import { FbsPersonnelService } from 'app/services/fbs/fbs-personnel.service';
 import { DatePipe } from '@angular/common';
 import { NzNotificationService, NzModalService } from 'ng-zorro-antd';
 import { FbsWorkingStatistics } from 'app/entity/fbs/fbs-working-statistics';
+import { convertingNumbers } from '@shared';
 
 @Component({
   selector: 'app-efficiency-report-list',
@@ -20,7 +21,8 @@ export class EfficiencyReportListComponent implements OnInit {
     private fbsPersonnelService: FbsPersonnelService,
     private datePipe: DatePipe,
     private nzNotificationService: NzNotificationService,
-    private nzModalService: NzModalService
+    private nzModalService: NzModalService,
+    private xlsx: XlsxService
   ) { }
 
   ngOnInit() {
@@ -141,6 +143,77 @@ export class EfficiencyReportListComponent implements OnInit {
      }
    }
  
+   /**
+   * 导出
+   */
+  exportLoading=false;
+   export() {
+    this.exportLoading=true;
+    let fbsWorkingStatistics =JSON.parse(JSON.stringify(this.fbsWorkingStatistics));
+    fbsWorkingStatistics.pageSize = 20000;
+    //时间格式化
+    // fbsWorkingStatistics.start = this.datePipe.transform(this.fbsWorkingStatistics.start, 'yyyy-MM-dd');
+    // fbsWorkingStatistics.end = this.datePipe.transform(this.fbsWorkingStatistics.end, 'yyyy-MM-dd');
+    this.fbsWorkingStatisticsService.getEfficiencyReport(fbsWorkingStatistics).then(response => {
+      if (response.success) {
+        //查询成功
+        let dataList = response.result.records; //表格数据
+        let data=[];
+        //设置导出头
+        let title=[
+          ['项目编号'],
+          ['项目名称'],
+          ['工作中心'],
+          ['生产订单号'],
+          ['物料编码'],
+          ['物料名称'],
+          ['工艺流程'],
+          ['人员编码'],
+          ['姓名'],
+          ['上岗时间'],
+          ['下岗时间'],
+          ['工时'],
+          ['效率']
+        ]
+        data.push(title);
+        //添加导出行数据
+        if(dataList){
+          dataList.forEach(element => {
+            let row=[];
+            row.push(element.costItemCode)
+            row.push(element.projectName)
+            row.push(element.workCenter)
+            row.push(element.orderNumber)
+            row.push(element.materielCode)
+            row.push(element.materielName)
+            row.push(element.fbsTechnologicalProcessItemName)
+            row.push(element.personnelCode)
+            row.push(element.personnelName)
+            row.push(element.firstTime)
+            row.push(element.finalTime)
+            row.push(element.workingHours)
+            if(element.efficiency){
+              row.push(element.efficiency+"%")
+            }else{
+              row.push("")
+            }
+            data.push(row)
+          });
+        }
+        // 导出
+        this.xlsx.export({
+          sheets: [
+            {
+              data: data,
+              name: '效率报表',
+            },
+          ],
+          filename: '效率报表.xlsx',
+        });
+        this.exportLoading = false;
+      }
+    });
+   }
  
    view() {}
 }

+ 1 - 1
src/app/routes/fbs-abnormal-working-hours/list/list.component.html

@@ -2,7 +2,7 @@
   <ng-template #phActionTpl>
     <button (click)="add()" nz-button nzType="primary">新建</button>
     <button (click)="export()" nz-button nzType="primary" [nzLoading]="exportLoading">导出</button>
-    <button (click)="itemsExport()" nz-button nzType="primary" [nzLoading]="itemsExportLoading">异常明细导出</button>
+    <!-- <button (click)="itemsExport()" nz-button nzType="primary" [nzLoading]="itemsExportLoading">异常明细导出</button> -->
   </ng-template>
 </page-header>
 <nz-card>

+ 93 - 32
src/app/routes/fbs-abnormal-working-hours/list/list.component.ts

@@ -238,7 +238,8 @@ export class FbsAbnormalWorkingHoursListComponent implements OnInit {
   export() {
     this.exportLoading=true;
     //时间格式化
-    let fbsAbnormalWorkingHours = new FbsAbnormalWorkingHours();
+    // let fbsAbnormalWorkingHours = new FbsAbnormalWorkingHours();
+    let fbsAbnormalWorkingHours=JSON.parse(JSON.stringify(this.fbsAbnormalWorkingHours))
     fbsAbnormalWorkingHours.pageSize = 20000;
     fbsAbnormalWorkingHours.start = this.datePipe.transform(this.fbsAbnormalWorkingHours.start, 'yyyy-MM-dd');
     fbsAbnormalWorkingHours.end = this.datePipe.transform(this.fbsAbnormalWorkingHours.end, 'yyyy-MM-dd');
@@ -249,27 +250,19 @@ export class FbsAbnormalWorkingHoursListComponent implements OnInit {
         let data = [];
         let title = [
           ['日期'], // 
-          ['应到人数'], // 
-          ['实到人数'], // 
-          ['请假'], // 
-          ['旷工'], // 
-          ['离职'], // 
-          ['出勤工时'], // 
-          ['加班人数'], // 
-          ['加班工时'], // 
-          ['加班原因'], // 
+          ['无效工时'], // 
           ['培训'], // 
           ['会议'], // 
+          ['待料'], //
           ['5S'], // 
-          ['研发'], // 
-          ['质量'], // 
+          ['其他'], // 
+          ['异常工时'], // 
           ['设计'], // 
           // ['返工'], // 
           ['物料'], // 
-          ['能源'], // 
-          ['其他'], // 
-          ['设备'], // 
           ['计划'], // 
+          ['制程'], // 
+          ['其他'], // 
           // ['配料'], // 
           // ['入库'], // 
           // ['打包'], // 
@@ -279,27 +272,18 @@ export class FbsAbnormalWorkingHoursListComponent implements OnInit {
         dataList.forEach(element => {
           let row = [];
           row.push(element.date);
-          row.push(convertingNumbers(element.numberOfPeopleToArrive));
-          row.push(convertingNumbers(element.actualNumberOfPeople));
-          row.push(convertingNumbers(element.lleave));
-          row.push(convertingNumbers(element.absenteeism));
-          row.push(convertingNumbers(element.quit));
-          row.push(convertingNumbers(element.attendanceHours));
-          row.push(convertingNumbers(element.overtimePeople));
-          row.push(convertingNumbers(element.overtimeHours));
-          row.push(element.overtimeReason);
+          row.push(convertingNumbers(element.invalidWork));
           row.push(convertingNumbers(element.train));
           row.push(convertingNumbers(element.meeting));
-          row.push(convertingNumbers(element.fiveS));
           row.push(convertingNumbers(element.researchAndDevelopment));
-          row.push(convertingNumbers(element.quality));
-          row.push(convertingNumbers(element.design));
-          // row.push(convertingNumbers(element.rework));
-          row.push(convertingNumbers(element.materiel));
-          row.push(convertingNumbers(element.energy));
+          row.push(convertingNumbers(element.fiveS));
           row.push(convertingNumbers(element.other));
-          row.push(convertingNumbers(element.equipment));
-          row.push(convertingNumbers(element.plan));
+          row.push(convertingNumbers(element.abnormalWorkingHours));
+          row.push(convertingNumbers(element.anomalyClassification1));
+          row.push(convertingNumbers(element.anomalyClassification2));
+          row.push(convertingNumbers(element.anomalyClassification3));
+          row.push(convertingNumbers(element.anomalyClassification4));
+          row.push(convertingNumbers(element.anomalyClassification5));
           // row.push(convertingNumbers(element.mixedIngredients));
           // row.push(convertingNumbers(element.warehousing));
           // row.push(convertingNumbers(element.pack));
@@ -319,6 +303,83 @@ export class FbsAbnormalWorkingHoursListComponent implements OnInit {
         this.exportLoading=false;
       }
     });
+    // this.fbsAbnormalWorkingHoursService.list(fbsAbnormalWorkingHours).then(response => {
+    //   if (response.success) {
+    //     //查询成功
+    //     let dataList= response.result.records; //表格数据
+    //     let data = [];
+    //     let title = [
+    //       ['日期'], // 
+    //       ['应到人数'], // 
+    //       ['实到人数'], // 
+    //       ['请假'], // 
+    //       ['旷工'], // 
+    //       ['离职'], // 
+    //       ['出勤工时'], // 
+    //       ['加班人数'], // 
+    //       ['加班工时'], // 
+    //       ['加班原因'], // 
+    //       ['培训'], // 
+    //       ['会议'], // 
+    //       ['5S'], // 
+    //       ['研发'], // 
+    //       ['质量'], // 
+    //       ['设计'], // 
+    //       // ['返工'], // 
+    //       ['物料'], // 
+    //       ['能源'], // 
+    //       ['其他'], // 
+    //       ['设备'], // 
+    //       ['计划'], // 
+    //       // ['配料'], // 
+    //       // ['入库'], // 
+    //       // ['打包'], // 
+    //       // ['仓库其他'], // 
+    //     ];
+    //     data.push(title);
+    //     dataList.forEach(element => {
+    //       let row = [];
+    //       row.push(element.date);
+    //       row.push(convertingNumbers(element.numberOfPeopleToArrive));
+    //       row.push(convertingNumbers(element.actualNumberOfPeople));
+    //       row.push(convertingNumbers(element.lleave));
+    //       row.push(convertingNumbers(element.absenteeism));
+    //       row.push(convertingNumbers(element.quit));
+    //       row.push(convertingNumbers(element.attendanceHours));
+    //       row.push(convertingNumbers(element.overtimePeople));
+    //       row.push(convertingNumbers(element.overtimeHours));
+    //       row.push(element.overtimeReason);
+    //       row.push(convertingNumbers(element.train));
+    //       row.push(convertingNumbers(element.meeting));
+    //       row.push(convertingNumbers(element.fiveS));
+    //       row.push(convertingNumbers(element.researchAndDevelopment));
+    //       row.push(convertingNumbers(element.quality));
+    //       row.push(convertingNumbers(element.design));
+    //       // row.push(convertingNumbers(element.rework));
+    //       row.push(convertingNumbers(element.materiel));
+    //       row.push(convertingNumbers(element.energy));
+    //       row.push(convertingNumbers(element.other));
+    //       row.push(convertingNumbers(element.equipment));
+    //       row.push(convertingNumbers(element.plan));
+    //       // row.push(convertingNumbers(element.mixedIngredients));
+    //       // row.push(convertingNumbers(element.warehousing));
+    //       // row.push(convertingNumbers(element.pack));
+    //       // row.push(convertingNumbers(element.warehouseOthers));
+    //       data.push(row);
+    //     });
+    //     // 导出
+    //     this.xlsx.export({
+    //       sheets: [
+    //         {
+    //           data: data,
+    //           name: '生产异常信息统计单导出',
+    //         },
+    //       ],
+    //       filename: '生产异常信息统计单导出.xlsx',
+    //     });
+    //     this.exportLoading=false;
+    //   }
+    // });
   }
 
 

+ 6 - 4
src/app/routes/fbs-technological-process/list/list.component.html

@@ -1,6 +1,6 @@
 <page-header [action]="phActionTpl">
   <ng-template #phActionTpl>
-    <button (click)="add()" nz-button nzType="primary">新建</button>
+    <!-- <button (click)="add()" nz-button nzType="primary">新建</button> -->
   </ng-template>
 </page-header>
 <nz-card>
@@ -58,11 +58,13 @@
         <td>{{item.name}}</td>
         <td>{{item.cinvCName}}</td>
         <td>
-          <a (click)="update(item)">修改</a>
+          <!-- <a (click)="update(item)">修改</a> -->
+          
+          <a (click)="update(item)">详情</a>
           <!-- 删除 -->
-          <span>&nbsp;|&nbsp;</span>
+          <!-- <span>&nbsp;|&nbsp;</span>
           <a nz-popconfirm nzTitle="是否删除" nzOkText="是" nzCancelText="否"
-            (nzOnConfirm)="delete(item)">删除</a>
+            (nzOnConfirm)="delete(item)">删除</a> -->
           </td>
         </tr>
     </nz-table>

+ 9 - 9
src/app/routes/fbs-technological-process/list/list.component.ts

@@ -108,15 +108,15 @@ export class FbsTechnologicalProcessListComponent implements OnInit {
             model.close();
           },
         },
-        {
-          label: '保存',
-          type: 'primary',
-          onClick: model=> {
-            model.save().then(()=>{
-              this.getList()
-            })
-          }
-        }
+        // {
+        //   label: '保存',
+        //   type: 'primary',
+        //   onClick: model=> {
+        //     model.save().then(()=>{
+        //       this.getList()
+        //     })
+        //   }
+        // }
       ]
     });
   }

+ 31 - 9
src/app/routes/fbs-technological-process/update/update.component.html

@@ -1,17 +1,39 @@
 <nz-spin [nzSpinning]="saveLoading">
   <form nz-form>
-    <nz-form-item >
-      <nz-form-label [nzSpan]="3">名称</nz-form-label>
-      <nz-form-control [nzSpan]="10">
-        <input nz-input name="name" [(ngModel)]="fbsTechnologicalProcess.name" />
-      </nz-form-control>
-    </nz-form-item>
+    <div nz-row [nzGutter]="{xs:12,sm:15,md:29,lg: 36, xl: 40}">
+      <div nz-col nzXs="24" nzSm="4" nzLg="12">
+        <nz-form-item >
+          <nz-form-label [nzSpan]="8">工作中心</nz-form-label>
+          <nz-form-control [nzSpan]="16">
+            <input nz-input name="memo" [(ngModel)]="fbsTechnologicalProcess.memo" />
+          </nz-form-control>
+        </nz-form-item>
+      </div>
+    </div>
+    <div nz-row [nzGutter]="{xs:12,sm:15,md:29,lg: 36, xl: 40}">
+      <div nz-col nzXs="24" nzSm="4" nzLg="12">
+        <nz-form-item >
+          <nz-form-label [nzSpan]="8">物料编码</nz-form-label>
+          <nz-form-control [nzSpan]="16">
+            <input nz-input name="name" [(ngModel)]="fbsTechnologicalProcess.name" />
+          </nz-form-control>
+        </nz-form-item>
+      </div>
+      <div nz-col nzXs="24" nzSm="4" nzLg="12">
+        <nz-form-item >
+          <nz-form-label [nzSpan]="8">物料名称</nz-form-label>
+          <nz-form-control [nzSpan]="16">
+            <input nz-input name="cinvCName" [(ngModel)]="fbsTechnologicalProcess.cinvCName" />
+          </nz-form-control>
+        </nz-form-item>
+      </div>
+    </div>
   </form>
 
   <nz-card >
     <div nz-row [nzGutter]="{xs:12,sm:15,md:29,lg: 36, xl: 40}">
       <div nz-col nzXs="24" nzSm="4" nzLg="24">
-        <button (click)="addRow()" nz-button nzType="primary">新增</button>
+        <!-- <button (click)="addRow()" nz-button nzType="primary">新增</button> -->
       </div>
     </div>
     <div nz-row [nzGutter]="{xs:12,sm:15,md:29,lg: 36, xl: 40}">
@@ -23,7 +45,7 @@
               <th nzWidth="50%">工艺</th>
               <th nzWidth="20%">标准工时</th>
               <th nzWidth="20%">排序</th>
-              <th nzWidth="10%">操作</th>
+              <!-- <th nzWidth="10%">操作</th> -->
             </tr>
           </thead>
           <tbody>
@@ -31,7 +53,7 @@
               <td><input nz-input name="name" [(ngModel)]="data.name" /></td>
               <td><input nz-input name="standardWorkingHours" [(ngModel)]="data.standardWorkingHours" /></td>
               <td><input nz-input name="sort" [(ngModel)]="data.sort" /></td>
-              <td><a nz-popconfirm nzTitle="是否删除?" (nzOnConfirm)="deleteRow(data.sort)">删除</a></td>
+              <!-- <td><a nz-popconfirm nzTitle="是否删除?" (nzOnConfirm)="deleteRow(data.sort)">删除</a></td> -->
             </tr>
           </tbody>
         </nz-table>

+ 1 - 1
src/app/routes/fbs-workshop-dispatch-list/add/add.component.html

@@ -101,7 +101,7 @@
           <th nzWidth="5%">物料名称</th>
           <th nzWidth="7%">日期</th>
           <th nzWidth="5%">计划数量</th>
-          <th nzWidth="5%">剩余数量</th>
+          <th nzWidth="5%">未派工数量</th>
           <th nzWidth="5%">派工数量</th>
           <th nzWidth="5%">标准工时</th>
           <th nzWidth="6%">计划开工时间</th>

+ 2 - 2
src/app/routes/fbs-workshop-dispatch-list/list/list.component.html

@@ -201,7 +201,7 @@
         <td  nzAlign="center" >{{item.plannedQuantity}}</td>
         <td nzAlign="center">{{item.numberOfTasks}}</td>
         <td nzAlign="center">{{item.latestCompletedQuantity}}</td>
-        <td nzAlign="center">{{item.latestCompletedQuantity}}</td>
+        <td nzAlign="center">{{item.numberOfTasks-item.latestCompletedQuantity}}</td>
         <td nzAlign="center">{{item.numberEfficiency}}%</td>
         <td nzAlign="center">{{item.standardWorkingHours}}</td>
         <td nzAlign="center">{{item.manHoursCompleted}}</td>
@@ -253,7 +253,7 @@
         <td nzAlign="center">{{totalList.plannedQuantity}}</td>
         <td nzAlign="center">{{totalList.numberOfTasks}}</td>
         <td nzAlign="center">{{totalList.latestCompletedQuantity}}</td>
-        <td nzAlign="center">{{totalList.latestCompletedQuantity}}</td>
+        <td nzAlign="center">{{totalList.numberOfTasks-totalList.latestCompletedQuantity}}</td>
         <td nzAlign="center">{{totalList.numberEfficiency}}%</td>
         <td nzAlign="center">{{totalList.standardWorkingHours}}</td>
         <td nzAlign="center">{{totalList.manHoursCompleted}}</td>

+ 19 - 8
src/app/routes/fbs-workshop-dispatch-list/list/list.component.ts

@@ -221,36 +221,47 @@ export class FbsWorkshopDispatchListListComponent implements OnInit {
         this.getEfficiency(dataList); //计算效率
         let data = [];
         let title = [
-          ['姓名'], // 姓名
-          ['项目名称'], // 日期
+          ['项目编码'], // 项目编码
+          ['项目名称'], // 项目名称
+          ['工作中心'], // 工作中心
+          // ['姓名'], // 姓名
           ['生产订单号'], // 生产订单号
           ['物料编码'], // 物料
           ['物料名称'], // 物料名称
           ['计划数量'], // 计划数量
           ['派工数量'], // 派工数量
-          ['标准工时'], // 标准工时
           ['完成数量'], // 完成数量
-          ['完成工时'], // 完成工时
+          ['剩余数量'], // 剩余数量
           ['达成率'], // 达成率
+          ['标准工时'], // 标准工时
+          ['实际工时'], // 实际工时
           ['生产效率'], // 生产效率
           ['实际完成时间'], // 日期
         ];
         data.push(title);
         dataList.forEach(element => {
           let row = [];
-          row.push(element.name);
+          row.push(element.costItemCode);
           row.push(element.projectName);
+          row.push(element.workCenter);
+          // row.push(element.name);
           row.push(element.productionOrderNumberName);
           row.push(element.productId);
           row.push(element.product);
           row.push(element.plannedQuantity);
           row.push(element.numberOfTasks);
-          row.push(element.standardWorkingHours);
           row.push(element.latestCompletedQuantity);
-          row.push(element.manHoursCompleted);
+          row.push(Number(element.numberOfTasks)-Number(element.latestCompletedQuantity));
           row.push(element.numberEfficiency + '%');
+          row.push(element.standardWorkingHours);
+          row.push(element.manHoursCompleted);
           row.push(element.workingHoursEfficiency + '%');
-          row.push(element.firstTime+"至"+element.finalTime);
+          if(element.firstTime&&element.finalTime){
+            row.push(element.firstTime+"至"+element.finalTime);
+          }else{
+            row.push("")
+          }
+          
           data.push(row);
         });
         // 导出

+ 1 - 1
src/app/routes/fbs-workshop-dispatch-list/update/update.component.html

@@ -70,7 +70,7 @@
         <td>{{fbsWorkshopDispatchList.plannedQuantity}}</td>
       </tr>
       <tr>
-        <td>剩余数量</td>
+        <td>未派工数量</td>
         <td>{{fbsWorkshopDispatchList.remainingQuantity}}</td>
         <td>完成数量</td>
         <td>{{fbsWorkshopDispatchList.latestCompletedQuantity}}</td>

+ 1 - 1
src/app/routes/fbs-workshop-dispatch-list/view/view.component.html

@@ -38,7 +38,7 @@
         <td>{{fbsWorkshopDispatchList.plannedQuantity}}</td>
       </tr>
       <tr>
-        <td>剩余数量</td>
+        <td>未派工数量</td>
         <td>{{fbsWorkshopDispatchList.remainingQuantity}}</td>
         <td>完成数量</td>
         <td>{{fbsWorkshopDispatchList.latestCompletedQuantity}}</td>

BIN
src/app/routes/routes.zip