chenc преди 4 години
родител
ревизия
845d5b8535
променени са 20 файла, в които са добавени 221 реда и са изтрити 90 реда
  1. 5 1
      src/app/entity/fbs/fbs-abnormal-working-hours-describe.ts
  2. 2 0
      src/app/entity/fbs/fbs-personnel.ts
  3. 60 43
      src/app/routes/dashboard/analysis/analysis.component.html
  4. 2 1
      src/app/routes/dashboard/analysis/analysis.component.ts
  5. 42 18
      src/app/routes/fbs-abnormal-working-hours/add/add.component.html
  6. 1 0
      src/app/routes/fbs-abnormal-working-hours/add/add.component.ts
  7. 4 0
      src/app/routes/fbs-abnormal-working-hours/list/list.component.ts
  8. 25 6
      src/app/routes/fbs-abnormal-working-hours/update/update.component.html
  9. 1 0
      src/app/routes/fbs-abnormal-working-hours/update/update.component.ts
  10. 5 1
      src/app/routes/fbs-abnormal-working-hours/view/view.component.html
  11. 6 0
      src/app/routes/fbs-personnel/add/add.component.html
  12. 3 1
      src/app/routes/fbs-personnel/list/list.component.html
  13. 6 0
      src/app/routes/fbs-personnel/update/update.component.html
  14. 3 3
      src/app/routes/fbs-workshop-dispatch-list/add/add.component.ts
  15. 10 8
      src/app/routes/fbs-workshop-dispatch-list/list/list.component.html
  16. 32 0
      src/app/routes/fbs-workshop-dispatch-list/list/list.component.ts
  17. 4 4
      src/app/routes/fbs-workshop-dispatch-list/update/update.component.html
  18. 2 2
      src/app/routes/fbs-workshop-dispatch-list/update/update.component.ts
  19. 6 0
      src/app/routes/fbs-workshop-dispatch-list/view/view.component.html
  20. 2 2
      src/app/services/fbs/fbs-workshop-dispatch-list.service.ts

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

@@ -19,5 +19,9 @@ export class FbsAbnormalWorkingHoursDescribe extends Page {
   //开始
 	start?:string;
 	//结束
-	end?:string;
+  end?:string;
+  //类别
+  type?:string;
+  //计划数量
+  plannedQuantity?:number;
 }

+ 2 - 0
src/app/entity/fbs/fbs-personnel.ts

@@ -7,4 +7,6 @@ export class FbsPersonnel  extends Page{
 	personnelName?:string;
 	/**岗位 */
 	post?:string;
+	/**员工技能 */
+	staffSkills?:string;
 }

+ 60 - 43
src/app/routes/dashboard/analysis/analysis.component.html

@@ -64,30 +64,46 @@
 <th nzLeft="60px" nzWidth="100px"><strong>生产线</strong></th>
 <th nzLeft="160px" nzWidth="100px"><strong>生产订单号</strong></th> -->
 <nz-spin [nzSpinning]="saveLoading">
-  <!-- <form nz-form>
+  <form nz-form>
     <div nz-row [nzGutter]="{xs:12,sm:15,md:29,lg: 36, xl: 40}">
       <div nz-col nzXs="24" nzSm="4" nzLg="8">
         <nz-form-item class="nz-form-item">
-          <nz-form-label [nzSpan]="8">项目名称</nz-form-label>
+          <nz-form-label [nzSpan]="8">生产订单</nz-form-label>
           <nz-form-control [nzSpan]="16">
-              <nz-date-picker name="fbsWorkshopDispatchList.projectName" [(ngModel)]="fbsWorkshopDispatchList.projectName" nzPlaceHolder="请选择" >
-              </nz-date-picker>
+            <input [(ngModel)]="fbsWorkshopDispatchList.productionOrderNumberName" name="productionOrderNumberName" nz-input
+            placeholder="请输入" />
+          </nz-form-control>
+        </nz-form-item>
+      </div>
+       <!-- 按钮 -->
+       <div nz-col nzXs="24" nzSm="4" nzLg="8">
+        <nz-form-item class="nz-form-item">
+          <nz-form-label [nzSpan]="2" [nzNoColon]="true"></nz-form-label>
+          <nz-form-control [nzSpan]="16">
+            <!-- 查询 -->
+            <button nz-button nzType="primary" (click)="getSumDispatchReport()">查询</button>
           </nz-form-control>
         </nz-form-item>
       </div>
     </div>
-</form> -->
-<div nz-row [nzGutter]="24" class="pt-lg">
+</form>
+<div nz-row [nzGutter]="24">
   <div nz-col nzXs="24" nzSm="24" nzMd="24" nzLg="24">
     <nz-table class="tableTdPadding"  nzSize="small" #columnTable nzBordered [nzData]="listOfData" 
       [nzScroll]="{ x: widthLength+'px', y:'550px'}" [nzShowPagination]="false" [nzFrontPagination]="false">
       <thead>
         <tr>
-          <th nzLeft="0px" nzWidth="60px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>序号</strong></th>
+          <!-- <th nzLeft="0px" nzWidth="60px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>序号</strong></th>
           <th nzLeft="58px" nzWidth="100px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>项目名称</strong></th>
           <th nzLeft="157px" nzWidth="110px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>生产订单号</strong></th>
           <th nzLeft="265px" nzWidth="120px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>物料编码</strong></th>
-          <th nzLeft="383px" nzWidth="200px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>物料名称</strong></th>
+          <th nzLeft="383px" nzWidth="200px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>物料名称</strong></th> -->
+          
+          <th  nzWidth="60px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>序号</strong></th>
+          <th nzWidth="100px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>项目名称</strong></th>
+          <th  nzWidth="110px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>生产订单号</strong></th>
+          <th nzWidth="120px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>物料编码</strong></th>
+          <th nzWidth="200px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>物料名称</strong></th>
           <th nzWidth="80px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>月度计划</strong></th>
           <th nzWidth="100px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>标准总工时</strong></th>
           <th nzWidth="110px" nzAlign="center" style="background-color:rgb(223, 223, 219)"><strong>累计完成数量</strong></th>
@@ -102,8 +118,9 @@
           </ng-container>
         </tr>
         <tr>
-          <th colspan="5" nzLeft="0px"></th>
-          <th colspan="4" ></th>
+          <!-- <th colspan="5" nzLeft="0px"></th>
+          <th colspan="4" ></th> -->
+          <th colspan="9" ></th>
           <ng-container *ngFor="let date of dateList;let i=index">
             <th colspan="6" *ngIf="i%2===0" style="background-color:rgb(223, 223, 219)"><strong>{{date.finalTime|date:'y-MM-dd'}}</strong></th>
             <th colspan="6" *ngIf="i%2!==0" ><strong>{{date.finalTime|date:'y-MM-dd'}}</strong></th>
@@ -114,11 +131,11 @@
         <tr *ngFor="let data of columnTable.data;let i = index">
           <ng-container *ngIf="data.projectName!=='统计'">
           <!-- *ngIf="data.mergeLines!=0" [attr.rowSpan]="data.mergeLines" -->
-          <td nzLeft="0px" *ngIf="data.mergeLines!=0" [attr.rowSpan]="data.mergeLines">{{ data.sort }}</td>
-          <td nzLeft="58px" *ngIf="data.mergeLines!=0" [attr.rowSpan]="data.mergeLines">{{ data.projectName }}</td>
-          <td nzLeft="157px">{{ data.productionOrderNumberName }}</td>
-          <td nzLeft="265px">{{data.productId}}</td>
-          <td nzLeft="383px">{{data.product}}</td>
+          <td  *ngIf="data.mergeLines!=0" [attr.rowSpan]="data.mergeLines">{{ data.sort }}</td>
+          <td  *ngIf="data.mergeLines!=0" [attr.rowSpan]="data.mergeLines">{{ data.projectName }}</td>
+          <td >{{ data.productionOrderNumberName }}</td>
+          <td >{{data.productId}}</td>
+          <td >{{data.product}}</td>
           <td nzAlign="center">{{data.numberOfTasksTotal}}</td>
           <td nzAlign="center">{{data.standardWorkingHoursTotal}}</td>
           <td nzAlign="center">{{data.quantityCompletedTotal}}</td>
@@ -142,11 +159,11 @@
         <!-- 统计 -->
         <tr style="background-color:rgb(223, 223, 219)" *ngFor="let data of columnTable.data;let i = index">
           <ng-container *ngIf="data.projectName==='统计'">
-          <td nzLeft="0px" style="background-color:rgb(223, 223, 219)"></td>
-          <td nzLeft="58px" style="background-color:rgb(223, 223, 219);font-weight:bolder" nzAlign="center">统计</td>
-          <td nzLeft="157px" style="background-color:rgb(223, 223, 219)"></td>
-          <td nzLeft="265px"></td>
-          <td nzLeft="383px"></td>
+          <td  style="background-color:rgb(223, 223, 219)"></td>
+          <td  style="background-color:rgb(223, 223, 219);font-weight:bolder" nzAlign="center">统计</td>
+          <td  style="background-color:rgb(223, 223, 219)"></td>
+          <td ></td>
+          <td ></td>
           <td nzAlign="center">{{data.numberOfTasksTotal}}</td>
           <td nzAlign="center">{{data.standardWorkingHoursTotal}}</td>
           <td nzAlign="center">{{data.quantityCompletedTotal}}</td>
@@ -172,11 +189,11 @@
       <!-- 异常工时 -->
       <tbody>
         <tr>
-          <td nzLeft="0px"></td>
-          <td nzLeft="58px"></td>
-          <td nzLeft="157px"></td>
-          <td nzLeft="265px"></td>
-          <td nzLeft="383px"></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
           <!-- <td>月计划达成率</td>
           <td>1.95%</td>
           <td>月生产效率</td>
@@ -192,11 +209,11 @@
           </ng-container>
         </tr>
         <tr>
-          <td nzLeft="0px"></td>
-          <td nzLeft="58px"></td>
-          <td nzLeft="157px"></td>
-          <td nzLeft="265px"></td>
-          <td nzLeft="383px"></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
           <td colSpan="4">加班记录</td>
           <ng-container *ngFor="let abnormalWorkingHours of abnormalWorkingHoursList">
             <td>加班工时</td>
@@ -206,16 +223,16 @@
           </ng-container>
         </tr>
         <tr>
-          <!-- <td rowSpan="2"></td>
           <td rowSpan="2"></td>
           <td rowSpan="2"></td>
           <td rowSpan="2"></td>
-          <td rowSpan="2"></td> -->
-          <td nzLeft="0px" rowSpan="2"></td>
+          <td rowSpan="2"></td>
+          <td rowSpan="2"></td>
+          <!-- <td nzLeft="0px" rowSpan="2"></td>
           <td nzLeft="58px" rowSpan="2"></td>
           <td nzLeft="157px" rowSpan="2"></td>
           <td nzLeft="265px" rowSpan="2"></td>
-          <td nzLeft="383px" rowSpan="2"></td>
+          <td nzLeft="383px" rowSpan="2"></td> -->
           <td colSpan="4" rowSpan="2">其他工时统计</td>
           <ng-container *ngFor="let abnormalWorkingHours of abnormalWorkingHoursList">
             <td>培训</td>
@@ -237,16 +254,16 @@
           </ng-container>
         </tr>
         <tr>
-          <!-- <td rowSpan="3"></td>
           <td rowSpan="3"></td>
           <td rowSpan="3"></td>
           <td rowSpan="3"></td>
-          <td rowSpan="3"></td> -->
-          <td nzLeft="0px" rowSpan="3"></td>
+          <td rowSpan="3"></td>
+          <td rowSpan="3"></td>
+          <!-- <td nzLeft="0px" rowSpan="3"></td>
           <td nzLeft="58px" rowSpan="3"></td>
           <td nzLeft="157px" rowSpan="3"></td>
           <td nzLeft="265px" rowSpan="3"></td>
-          <td nzLeft="383px" rowSpan="3"></td>
+          <td nzLeft="383px" rowSpan="3"></td> -->
           <td colSpan="4" rowSpan="3">异常工时统计</td>
           <ng-container *ngFor="let abnormalWorkingHours of abnormalWorkingHoursList">
             <td>质量</td>
@@ -279,11 +296,11 @@
         </tr>
 
         <tr>
-          <td nzLeft="0px"></td>
-          <td nzLeft="58px"></td>
-          <td nzLeft="157px"></td>
-          <td nzLeft="265px"></td>
-          <td nzLeft="383px"></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
+          <td ></td>
           <td colSpan="4">异常原因描述</td>
           <ng-container *ngFor="let abnormalWorkingHours of abnormalWorkingHoursList">
             <td colSpan="6">

+ 2 - 1
src/app/routes/dashboard/analysis/analysis.component.ts

@@ -293,7 +293,7 @@ export class DashboardAnalysisComponent implements OnInit {
    */
   getSumDispatchReport(){
     this.saveLoading=true;
-    this.fbsWorkshopDispatchListService.getSumDispatchReport().then((response)=>{
+    this.fbsWorkshopDispatchListService.getSumDispatchReport(this.fbsWorkshopDispatchList).then((response)=>{
       this.listOfData=response.result;
       //获取时间集合数据
       this.getDateList();
@@ -301,6 +301,7 @@ export class DashboardAnalysisComponent implements OnInit {
     })
   }
 
+
   /**
    * 获取时间列集合数据
    */

+ 42 - 18
src/app/routes/fbs-abnormal-working-hours/add/add.component.html

@@ -1,6 +1,7 @@
 <nz-spin [nzSpinning]="saveLoading">
   <!-- 主数据 -->
-  <nz-table nzSize="small" [nzNoResult]="' '" nzBordered #basicTable [nzShowPagination]="false" style="margin-bottom: 5px;">
+  <nz-table nzSize="small" [nzNoResult]="' '" nzBordered #basicTable [nzShowPagination]="false"
+    style="margin-bottom: 5px;">
     <thead>
       <tr>
         <!-- 异常工时信息统计单 -->
@@ -115,23 +116,24 @@
           <nz-input-number [(ngModel)]="fbsAbnormalWorkingHours.equipment" [nzMin]="0" [nzStep]="1"></nz-input-number>
         </td>
         <td>计划</td>
-        <td >
+        <td>
           <nz-input-number [(ngModel)]="fbsAbnormalWorkingHours.plan" [nzMin]="0" [nzStep]="1"></nz-input-number>
         </td>
         <td></td>
         <td></td>
       </tr>
       <tr>
-        <td  rowSpan="2">仓库工时统计</td>
-        <td >配料</td>
+        <td rowSpan="2">仓库工时统计</td>
+        <td>配料</td>
         <td>
-          <nz-input-number [(ngModel)]="fbsAbnormalWorkingHours.mixedIngredients" [nzMin]="0" [nzStep]="1"></nz-input-number>
+          <nz-input-number [(ngModel)]="fbsAbnormalWorkingHours.mixedIngredients" [nzMin]="0" [nzStep]="1">
+          </nz-input-number>
         </td>
-        <td >入库</td>
-        <td >
+        <td>入库</td>
+        <td>
           <nz-input-number [(ngModel)]="fbsAbnormalWorkingHours.warehousing" [nzMin]="0" [nzStep]="1"></nz-input-number>
         </td>
-        <td >打包</td>
+        <td>打包</td>
         <td>
           <nz-input-number [(ngModel)]="fbsAbnormalWorkingHours.pack" [nzMin]="0" [nzStep]="1"></nz-input-number>
         </td>
@@ -142,8 +144,8 @@
           <nz-input-number [(ngModel)]="fbsAbnormalWorkingHours.warehouseOthers" [nzMin]="0" [nzStep]="1">
           </nz-input-number>
         </td>
-        <td >备注</td>
-        <td colSpan="3"> 
+        <td>备注</td>
+        <td colSpan="3">
           <textarea rows="2" nz-input [(ngModel)]="fbsAbnormalWorkingHours.memo"></textarea>
         </td>
       </tr>
@@ -186,13 +188,16 @@
           </div>
         </div>
         <!-- 表格 -->
-        <nz-table style="margin-top: 5px;" nzSize="small" #editRowTable nzBordered [nzData]="describeList" [nzShowPagination]="false" [nzFrontPagination]=false>
+        <nz-table style="margin-top: 5px;" nzSize="small" #editRowTable nzBordered [nzData]="describeList"
+          [nzShowPagination]="false" [nzFrontPagination]=false>
           <thead>
             <tr>
               <th nzWidth="5%">序号</th>
+              <th nzWidth="10%">类别</th>
               <th nzWidth="15%">物料名称</th>
+              <th nzWidth="10%">计划数量</th>
               <th nzWidth="10%">不良品数量</th>
-              <th nzWidth="45%">异常原因描述</th>
+              <th nzWidth="25%">异常原因描述</th>
               <th nzWidth="15%">异常类别</th>
               <th nzWidth="10%">操作</th>
             </tr>
@@ -201,14 +206,33 @@
             <tr *ngFor="let data of editRowTable.data">
               <td>{{data.sort}}</td>
               <td>
-                <nz-select [(ngModel)]="data.productId" style="width: 100%;" nzShowSearch
-                  nzAllowClear nzPlaceHolder="请选择" (ngModelChange)="productChange($event,data)">
-                  <ng-container *ngFor="let produc of productList">
-                    <nz-option [nzLabel]="produc.product" [nzValue]="produc.productId"> </nz-option>
-                  </ng-container>
+                <nz-select [(ngModel)]="data.type" style="width: 100%;" nzShowSearch nzAllowClear nzPlaceHolder="请选择"
+                  [nzDropdownMatchSelectWidth]="false">
+                  <nz-option nzLabel="产品" nzValue="产品"> </nz-option>
+                  <nz-option nzLabel="物料" nzValue="物料"> </nz-option>
                 </nz-select>
               </td>
-              <td><nz-input-number [(ngModel)]="data.rejectsNumber" [nzMin]="0" [nzStep]="1"></nz-input-number></td>
+              <td>
+                <!-- 选择产品 -->
+                <ng-container *ngIf="data.type=='产品'">
+                  <nz-select [(ngModel)]="data.productId" style="width: 100%;" nzShowSearch nzAllowClear
+                    nzPlaceHolder="请选择" (ngModelChange)="productChange($event,data)"
+                    [nzDropdownMatchSelectWidth]="false">
+                    <ng-container *ngFor="let produc of productList">
+                      <nz-option [nzLabel]="produc.product" [nzValue]="produc.productId"> </nz-option>
+                    </ng-container>
+                  </nz-select>
+                </ng-container>
+                <!-- 选择物料 -->
+                <ng-container *ngIf="data.type=='物料'">
+                  <input [(ngModel)]="data.product" nz-input
+              placeholder="请输入" />
+                </ng-container>
+              </td>
+              <td>{{data.plannedQuantity}}</td>
+              <td>
+                <nz-input-number [(ngModel)]="data.rejectsNumber" [nzMin]="0" [nzStep]="1"></nz-input-number>
+              </td>
               <td><textarea rows="1" nz-input [(ngModel)]="data.describes"></textarea></td>
               <td>
                 <!-- <nz-select [(ngModel)]="data.typeId" style="width: 100%;" nzShowSearch

+ 1 - 0
src/app/routes/fbs-abnormal-working-hours/add/add.component.ts

@@ -90,6 +90,7 @@ export class FbsAbnormalWorkingHoursAddComponent implements OnInit {
         if(event===element.productId){
           data.workshopDispatchListId=element.id;//派工单id
           data.product=element.product;//产品名称
+          data.plannedQuantity=element.plannedQuantity;//计划数量
         }
       });
     }

+ 4 - 0
src/app/routes/fbs-abnormal-working-hours/list/list.component.ts

@@ -250,7 +250,9 @@ export class FbsAbnormalWorkingHoursListComponent implements OnInit {
         let dataList= response.result; //表格数据
         let data = [];
         let title = [
+          ['类别'], // 
           ['物料名称'], // 
+          ['计划数量'], // 
           ['不良品数量'], // 
           ['异常原因描述'], // 
           ['异常类别'], // 
@@ -258,7 +260,9 @@ export class FbsAbnormalWorkingHoursListComponent implements OnInit {
         data.push(title);
         dataList.forEach(element => {
           let row = [];
+          row.push(element.type);
           row.push(element.product);
+          row.push(convertingNumbers(element.plannedQuantity));
           row.push(convertingNumbers(element.rejectsNumber));
           row.push(element.describes);
           row.push(element.typeName);

+ 25 - 6
src/app/routes/fbs-abnormal-working-hours/update/update.component.html

@@ -190,9 +190,11 @@
           <thead>
             <tr>
               <th nzWidth="5%">序号</th>
+              <th nzWidth="10%">类别</th>
               <th nzWidth="15%">物料名称</th>
+              <th nzWidth="10%">计划数量</th>
               <th nzWidth="10%">不良品数量</th>
-              <th nzWidth="45%">异常原因描述</th>
+              <th nzWidth="25%">异常原因描述</th>
               <th nzWidth="15%">异常类别</th>
               <th nzWidth="10%">操作</th>
             </tr>
@@ -201,13 +203,30 @@
             <tr *ngFor="let data of editRowTable.data">
               <td>{{data.sort}}</td>
               <td>
-                <nz-select [(ngModel)]="data.productId" style="width: 100%;" nzShowSearch
-                  nzAllowClear nzPlaceHolder="请选择" (ngModelChange)="productChange($event,data)">
-                  <ng-container *ngFor="let produc of productList">
-                    <nz-option [nzLabel]="produc.product" [nzValue]="produc.productId"> </nz-option>
-                  </ng-container>
+                <nz-select [(ngModel)]="data.type" style="width: 100%;" nzShowSearch nzAllowClear nzPlaceHolder="请选择"
+                  [nzDropdownMatchSelectWidth]="false">
+                  <nz-option nzLabel="产品" nzValue="产品"> </nz-option>
+                  <nz-option nzLabel="物料" nzValue="物料"> </nz-option>
                 </nz-select>
               </td>
+              <td>
+                <!-- 选择产品 -->
+                <ng-container *ngIf="data.type=='产品'">
+                  <nz-select [(ngModel)]="data.productId" style="width: 100%;" nzShowSearch nzAllowClear
+                    nzPlaceHolder="请选择" (ngModelChange)="productChange($event,data)"
+                    [nzDropdownMatchSelectWidth]="false">
+                    <ng-container *ngFor="let produc of productList">
+                      <nz-option [nzLabel]="produc.product" [nzValue]="produc.productId"> </nz-option>
+                    </ng-container>
+                  </nz-select>
+                </ng-container>
+                <!-- 选择物料 -->
+                <ng-container *ngIf="data.type=='物料'">
+                  <input [(ngModel)]="data.product" nz-input
+              placeholder="请输入" />
+                </ng-container>
+              </td>
+              <td>{{data.plannedQuantity}}</td>
               <td><nz-input-number [(ngModel)]="data.rejectsNumber" [nzMin]="0" [nzStep]="1"></nz-input-number></td>
               <td><textarea rows="1" nz-input [(ngModel)]="data.describes"></textarea></td>
               <td>

+ 1 - 0
src/app/routes/fbs-abnormal-working-hours/update/update.component.ts

@@ -162,6 +162,7 @@ export class FbsAbnormalWorkingHoursUpdateComponent implements OnInit {
         if(event===element.productId){
           data.workshopDispatchListId=element.id;//派工单id
           data.product=element.product;//产品名称
+          data.plannedQuantity=element.plannedQuantity;//计划数量
         }
       });
     }

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

@@ -156,9 +156,11 @@
           <thead>
             <tr>
               <th nzWidth="5%">序号</th>
+              <th nzWidth="10%">类别</th>
               <th nzWidth="15%">物料名称</th>
+              <th nzWidth="10%">计划数量</th>
               <th nzWidth="10%">不良品数量</th>
-              <th nzWidth="45%">异常原因描述</th>
+              <th nzWidth="25%">异常原因描述</th>
               <th nzWidth="15%">异常类别</th>
               <!-- <th nzWidth="10%">操作</th> -->
             </tr>
@@ -166,7 +168,9 @@
           <tbody>
             <tr *ngFor="let data of editRowTable.data">
               <td>{{data.sort}}</td>
+              <td>{{data.type}}</td>
               <td>{{data.product}}</td>
+              <td>{{data.plannedQuantity}}</td>
               <td>{{data.rejectsNumber}}</td>
               <td>{{data.describes}}</td>
               <td>{{data.typeName}}</td>

+ 6 - 0
src/app/routes/fbs-personnel/add/add.component.html

@@ -18,5 +18,11 @@
         <input nz-input name="fbsPersonnel.post" [(ngModel)]="fbsPersonnel.post" />
       </nz-form-control>
     </nz-form-item>
+    <nz-form-item>
+      <nz-form-label [nzSpan]="6" >员工技能</nz-form-label>
+      <nz-form-control [nzSpan]="16">
+        <input nz-input name="fbsPersonnel.staffSkills" [(ngModel)]="fbsPersonnel.staffSkills" />
+      </nz-form-control>
+    </nz-form-item>
     </form>
   </nz-spin>

+ 3 - 1
src/app/routes/fbs-personnel/list/list.component.html

@@ -12,7 +12,8 @@
         <!-- <th>姓名</th> -->
         <th style="width:15%">人员编码</th>
         <th style="width:20%">人员名称</th>
-        <th style="width:50%">岗位</th>
+        <th style="width:25%">岗位</th>
+        <th style="width:25%">员工技能</th>
         <th style="width:15%">操作</th>
       </tr>
     </thead>
@@ -21,6 +22,7 @@
         <td>{{item.personnelCode}}</td>
         <td>{{item.personnelName}}</td>
         <td>{{item.post}}</td>
+        <td>{{item.staffSkills}}</td>
         <td>
           <a (click)="update(item)">{{ 'contract.index.update' | translate }}</a>
           <!-- 删除 -->

+ 6 - 0
src/app/routes/fbs-personnel/update/update.component.html

@@ -18,5 +18,11 @@
         <input nz-input name="fbsPersonnel.post" [(ngModel)]="fbsPersonnel.post" />
       </nz-form-control>
     </nz-form-item>
+    <nz-form-item>
+      <nz-form-label [nzSpan]="6" >员工技能</nz-form-label>
+      <nz-form-control [nzSpan]="16">
+        <input nz-input name="fbsPersonnel.staffSkills" [(ngModel)]="fbsPersonnel.staffSkills" />
+      </nz-form-control>
+    </nz-form-item>
     </form>
   </nz-spin>

+ 3 - 3
src/app/routes/fbs-workshop-dispatch-list/add/add.component.ts

@@ -206,9 +206,9 @@ export class FbsWorkshopDispatchListAddComponent implements OnInit {
     this.saveLoading=true;
     if(this.workshopDispatchListList){
       this.workshopDispatchListList.forEach(element => {
-        element.date=this.datePipe.transform(this.fbsWorkshopDispatchList.date, 'yyyy-MM-dd HH:mm:ss');
-        element.plannedStartTime=this.datePipe.transform(this.fbsWorkshopDispatchList.plannedStartTime, 'yyyy-MM-dd HH:mm:ss');
-        element.plannedEndTime=this.datePipe.transform(this.fbsWorkshopDispatchList.plannedEndTime, 'yyyy-MM-dd HH:mm:ss');
+        element.date=this.datePipe.transform(element.date, 'yyyy-MM-dd HH:mm:ss');
+        element.plannedStartTime=this.datePipe.transform(element.plannedStartTime, 'yyyy-MM-dd HH:mm:ss');
+        element.plannedEndTime=this.datePipe.transform(element.plannedEndTime, 'yyyy-MM-dd HH:mm:ss');
       });
     }
     let workshopDispatchList=new FbsWorkshopDispatchList();

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

@@ -11,7 +11,7 @@
       <!-- 派工时间 -->
       <div nz-col nzXs="24" nzSm="4" nzLg="8">
         <nz-form-item class="nz-form-item">
-          <nz-form-label [nzSpan]="8">派工时间</nz-form-label>
+          <nz-form-label [nzSpan]="8">时间</nz-form-label>
           <nz-form-control [nzSpan]="16">
             <!-- <input [(ngModel)]="fbsWorkshopDispatchList.name" name="name" nz-input
               placeholder="请输入" /> -->
@@ -95,6 +95,7 @@
         <th>日期</th>
         <th>生产订单号</th>
         <th>产品</th>
+        <th>计划数量</th>
         <th>派工数量</th>
         <th>标准工时</th>
         <th>完成数量</th>
@@ -113,7 +114,8 @@
         <td>{{item.name}}</td>
         <td>{{item.date}}</td>
         <td>{{item.productionOrderNumberName}}</td>
-        <td>{{item.product}}</td>
+        <td style="width: 15%;">{{item.product}}</td>
+        <td>{{item.plannedQuantity}}</td>
         <td>{{item.numberOfTasks}}</td>
         <td>{{item.standardWorkingHours}}</td>
         <td>{{item.latestCompletedQuantity}}</td>
@@ -142,16 +144,16 @@
 
         </td>
       </tr>
-      <tr>
+      <tr style="font-weight:bolder">
         <td>总计</td>
         <td></td>
         <td></td>
         <td></td>
-        <td></td>
-        <td></td>
-        <td></td>
-        <td></td>
-        <td></td>
+        <td>{{totalList.plannedQuantity}}</td>
+        <td>{{totalList.numberOfTasks}}</td>
+        <td>{{totalList.standardWorkingHours}}</td>
+        <td>{{totalList.latestCompletedQuantity}}</td>
+        <td>{{totalList.manHoursCompleted}}</td>
         <td></td>
         <td></td>
         <td></td>

+ 32 - 0
src/app/routes/fbs-workshop-dispatch-list/list/list.component.ts

@@ -71,10 +71,42 @@ export class FbsWorkshopDispatchListListComponent implements OnInit {
         this.getEfficiency(this.dataList); //计算效率
         this.page = response.result; //分页数据
         this.isLoading = false;
+        this.getTotal();//计算当页的总计数量
       }
     });
   }
 
+  /**
+   * 初始化总计
+   */
+  totalList:any={}
+  initializationTotal(){
+    this.totalList={
+      plannedQuantity:0,
+      numberOfTasks:0,
+      standardWorkingHours:0,
+      latestCompletedQuantity:0,
+      manHoursCompleted:0
+    }
+  }
+
+  /**
+   * 计算当页的总计数据
+   */
+  getTotal(){
+    this.initializationTotal();
+    if(this.dataList){
+      this.dataList.forEach(element => {
+        this.totalList.plannedQuantity=this.totalList.plannedQuantity+Number(element.plannedQuantity);
+        this.totalList.numberOfTasks=this.totalList.numberOfTasks+Number(element.numberOfTasks);
+        this.totalList.standardWorkingHours=this.totalList.standardWorkingHours+Number(element.standardWorkingHours);
+        this.totalList.latestCompletedQuantity=this.totalList.latestCompletedQuantity+Number(element.latestCompletedQuantity);
+        this.totalList.manHoursCompleted=this.totalList.manHoursCompleted+Number(element.manHoursCompleted);
+      });
+      this.totalList.manHoursCompleted=this.totalList.manHoursCompleted.toFixed(2)
+    }
+  }
+
   /**
    * 导出
    */

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

@@ -13,7 +13,7 @@
         <td style="width: 25%;">姓名</td>
         <td style="width: 25%;">
           <nz-select [(ngModel)]="fbsWorkshopDispatchList.personnelIdU8" style="width: 100%;" nzShowSearch nzAllowClear
-            nzPlaceHolder="请选择" (ngModelChange)="personnelChange($event)">
+            nzPlaceHolder="请选择" (ngModelChange)="personnelChange($event,fbsWorkshopDispatchList)">
             <ng-container *ngFor="let proper of properList">
               <nz-option [nzLabel]="proper.personnelName" [nzValue]="proper.personnelCode"> </nz-option>
             </ng-container>
@@ -42,7 +42,7 @@
         <td>物料名称</td>
         <td>
           <nz-select [(ngModel)]="fbsWorkshopDispatchList.productId" style="width: 100%;" nzShowSearch
-            nzAllowClear nzPlaceHolder="请选择" (ngModelChange)="productChange($event)">
+            nzAllowClear nzPlaceHolder="请选择" (ngModelChange)="productChange($event,fbsWorkshopDispatchList)">
             <ng-container *ngFor="let produc of productList">
               <nz-option [nzLabel]="produc.cinvname" [nzValue]="produc.cinvcode"> </nz-option>
             </ng-container>
@@ -54,8 +54,8 @@
       <tr>
         <td>剩余数量</td>
         <td>{{fbsWorkshopDispatchList.remainingQuantity}}</td>
-        <td></td>
-        <td></td>
+        <td>完成数量</td>
+        <td>{{fbsWorkshopDispatchList.latestCompletedQuantity}}</td>
       </tr>
       <tr>
         <td>派工数量</td>

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

@@ -122,7 +122,7 @@ export class FbsWorkshopDispatchListUpdateComponent implements OnInit {
   /**
    * 产品选中事件 获取产品名称
    */
-  productChange(event){
+  productChange(event,data?:any){
     if(event){
       this.productList.forEach(element => {
         if(element.cinvcode===event){
@@ -199,7 +199,7 @@ export class FbsWorkshopDispatchListUpdateComponent implements OnInit {
     //修改了派工数量如果与完成数量一样则自动完工
     if(Number(this.fbsWorkshopDispatchList.numberOfTasks) ===Number(this.fbsWorkshopDispatchList.latestCompletedQuantity)){
       this.fbsWorkshopDispatchList.state="3";
-      
+
     }
     this.fbsWorkshopDispatchListService.edit(this.fbsWorkshopDispatchList).then((response)=>{
       if(response.success){//保存成功

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

@@ -33,6 +33,12 @@
         <td>计划数量</td>
         <td>{{fbsWorkshopDispatchList.plannedQuantity}}</td>
       </tr>
+      <tr>
+        <td>剩余数量</td>
+        <td>{{fbsWorkshopDispatchList.remainingQuantity}}</td>
+        <td>完成数量</td>
+        <td>{{fbsWorkshopDispatchList.latestCompletedQuantity}}</td>
+      </tr>
       <tr>
         <td>派工数量</td>
         <td>{{fbsWorkshopDispatchList.numberOfTasks}}</td>

+ 2 - 2
src/app/services/fbs/fbs-workshop-dispatch-list.service.ts

@@ -60,8 +60,8 @@ export class FbsWorkshopDispatchListService {
   }
 
    // 首页报表查询
-   async getSumDispatchReport(): Promise<BaseResponse<FbsWorkshopDispatchList[]>> {
-    return await this.http.get<BaseResponse<FbsWorkshopDispatchList[]>>('/fbsWorkshopDispatchList/fbsWorkshopDispatchList/getSumDispatchReport').toPromise();
+   async getSumDispatchReport(body:any): Promise<BaseResponse<FbsWorkshopDispatchList[]>> {
+    return await this.http.get<BaseResponse<FbsWorkshopDispatchList[]>>('/fbsWorkshopDispatchList/fbsWorkshopDispatchList/getSumDispatchReport',{params:body}).toPromise();
   }
 
   // 批量新增