Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop
This commit is contained in:
		| @ -14,10 +14,11 @@ | ||||
|   <div class="card-title" | ||||
|     >装卸货信息<span class="tip-font">预计公里数:{{ totalDistance }}km,预计行程耗时:{{ totalTime }}小时</span></div | ||||
|   > | ||||
|  | ||||
|   <form nz-form [formGroup]="validateForm1" role="form"> | ||||
|     <div nz-row [nzGutter]="24"> | ||||
|       <div nz-col [nzSpan]="8"> | ||||
|         <div *ngFor="let data of startInfo; let idx = index"> | ||||
|       <div nz-col [nzSpan]="10"> | ||||
|         <div *ngFor="let data1 of startInfo; let idx = index"> | ||||
|           <nz-form-item> | ||||
|             <nz-form-label [nzSpan]="4" nzRequired>装货地</nz-form-label> | ||||
|             <nz-form-control [nzErrorTip]="'请输入装货地'"> | ||||
| @ -25,42 +26,51 @@ | ||||
|                 <nz-input-group [nzSuffix]="endInconTemp1"> | ||||
|                   <input | ||||
|                     nz-input | ||||
|                     [(ngModel)]="data.detailedAddress" | ||||
|                     [(ngModel)]="data1.detailedAddress" | ||||
|                     (click)="openMap('start', idx)" | ||||
|                     formControlName="loadAddress{{ idx }}" | ||||
|                     placeholder="请输入装货地" | ||||
|                   /> | ||||
|                 </nz-input-group> | ||||
|                 <span style="padding: 0 10px" | ||||
|                 ><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'start')"></i | ||||
|               ></span> | ||||
|                   ><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'start')"></i | ||||
|                 ></span> | ||||
|               </div> | ||||
|             </nz-form-control> | ||||
|           </nz-form-item> | ||||
|           <nz-form-item> | ||||
|             <nz-form-label [nzSpan]="4" nzRequired>联系人</nz-form-label> | ||||
|             <nz-form-control [nzErrorTip]="'请输入联系人信息'"> | ||||
|               <div class="align-center"> | ||||
|                 <input nz-input [(ngModel)]="data.appUserName" [ngModelOptions]="{ standalone: true }" maxlength="30" /> | ||||
|             <div class="align-center"> | ||||
|               <nz-form-control [nzErrorTip]="'请输入联系人姓名'"> | ||||
|                 <input | ||||
|                   nz-input | ||||
|                   [(ngModel)]="data1.appUserName" | ||||
|                   formControlName="loadName{{ idx }}" | ||||
|                   maxlength="30" | ||||
|                   placeholder="请输入联系人姓名" | ||||
|                 /> | ||||
|               </nz-form-control> | ||||
|               <nz-form-control [nzErrorTip]="'请输入联系人电话'"> | ||||
|                 <input | ||||
|                   style="margin-left: 12px" | ||||
|                   nz-input | ||||
|                   [(ngModel)]="data.contractTelephone" | ||||
|                   [ngModelOptions]="{ standalone: true }" | ||||
|                   [(ngModel)]="data1.contractTelephone" | ||||
|                   maxlength="11" | ||||
|                   formControlName="loadPhone{{ idx }}" | ||||
|                   placeholder="请输入联系人电话" | ||||
|                 /> | ||||
|               </div> | ||||
|             </nz-form-control> | ||||
|               </nz-form-control> | ||||
|             </div> | ||||
|           </nz-form-item> | ||||
|         </div> | ||||
|       </div> | ||||
|       <div nz-col [nzSpan]="8"> | ||||
|       <div nz-col [nzSpan]="4"> | ||||
|         <div style="display: flex; justify-content: center"> | ||||
|           <span style="padding: 24 px; font-size: 30px; color: #7d7d7d"><i nz-icon nzType="swap" nzTheme="outline"></i></span> | ||||
|         </div> | ||||
|       </div> | ||||
|       <div nz-col [nzSpan]="8"> | ||||
|         <div *ngFor="let data of endInfo; let idx = index"> | ||||
|       <div nz-col [nzSpan]="10"> | ||||
|         <div *ngFor="let data2 of endInfo; let idx = index"> | ||||
|           <nz-form-item> | ||||
|             <nz-form-label [nzSpan]="4" nzRequired>卸货地</nz-form-label> | ||||
|             <nz-form-control [nzErrorTip]="'请输入卸货地'"> | ||||
| @ -68,38 +78,46 @@ | ||||
|                 <nz-input-group [nzSuffix]="endInconTemp1"> | ||||
|                   <input | ||||
|                     nz-input | ||||
|                     [(ngModel)]="data.detailedAddress" | ||||
|                     [(ngModel)]="data2.detailedAddress" | ||||
|                     (click)="openMap('end', idx)" | ||||
|                     formControlName="unloadAddress{{ idx }}" | ||||
|                     placeholder="请输入卸货地" | ||||
|                   /> | ||||
|                 </nz-input-group> | ||||
|                 <span style="padding: 0 10px" | ||||
|                 ><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'end')"></i | ||||
|               ></span> | ||||
|                   ><i nz-icon nzType="menu" nzTheme="outline" style="color: #1890ff" (click)="chooseAddress(idx, 'end')"></i | ||||
|                 ></span> | ||||
|               </div> | ||||
|             </nz-form-control> | ||||
|           </nz-form-item> | ||||
|           <nz-form-item> | ||||
|             <nz-form-label [nzSpan]="4" nzRequired>联系人</nz-form-label> | ||||
|             <nz-form-control [nzErrorTip]="'请输入联系人信息'"> | ||||
|               <div class="align-center"> | ||||
|                 <input nz-input [(ngModel)]="data.appUserName" [ngModelOptions]="{ standalone: true }" maxlength="30" /> | ||||
|             <div class="align-center"> | ||||
|               <nz-form-control [nzErrorTip]="'请输入联系人姓名'"> | ||||
|                 <input | ||||
|                   nz-input | ||||
|                   [(ngModel)]="data2.appUserName" | ||||
|                   maxlength="30" | ||||
|                   formControlName="unloadName{{ idx }}" | ||||
|                   placeholder="请输入联系人姓名" | ||||
|                 /> | ||||
|               </nz-form-control> | ||||
|               <nz-form-control [nzErrorTip]="'请输入联系人电话'"> | ||||
|                 <input | ||||
|                   style="margin-left: 12px" | ||||
|                   nz-input | ||||
|                   [(ngModel)]="data.contractTelephone" | ||||
|                   [ngModelOptions]="{ standalone: true }" | ||||
|                   [(ngModel)]="data2.contractTelephone" | ||||
|                   formControlName="unloadPhone{{ idx }}" | ||||
|                   maxlength="11" | ||||
|                   placeholder="请输入联系人电话" | ||||
|                 /> | ||||
|               </div> | ||||
|             </nz-form-control> | ||||
|               </nz-form-control> | ||||
|             </div> | ||||
|           </nz-form-item> | ||||
|         </div> | ||||
|       </div> | ||||
|     </div> | ||||
|  | ||||
|     <ng-template #endInconTemp1><i nz-icon nzType="global"></i></ng-template> | ||||
|     <ng-template #endInconTemp1><i nz-icon nzType="environment" nzTheme="outline"></i></ng-template> | ||||
|   </form> | ||||
| </nz-card> | ||||
|  | ||||
| @ -188,6 +206,15 @@ | ||||
|   <div nz-row> | ||||
|     <div nz-col nzSpan="12"> | ||||
|       <sf #sf7 [schema]="schema7" [formData]="sf7data" [button]="'none'" [ui]="ui7"> | ||||
|         <ng-template sf-template="receiptAddressId" let-i let-ui="ui"> | ||||
|           <input | ||||
|             nz-input | ||||
|             [ngModel]="i.value" | ||||
|             (ngModelChange)="i.setValue($event)" | ||||
|             placeholder="请点击选择收回单地址" | ||||
|             (click)="backBillChange()" | ||||
|           /> | ||||
|         </ng-template> | ||||
|         <ng-template sf-template="paymentDays" let-i let-ui="ui"> | ||||
|           <div nz-row> | ||||
|             <div class="align-center" style="width: 350px;"> | ||||
|  | ||||
| @ -100,7 +100,6 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|       this.PageStatus = '大宗下一单'; | ||||
|     }  | ||||
|     this.initSF1(); | ||||
|     // this.initSF2(); | ||||
|     this.initSF3(); | ||||
|     this.initSF4(); | ||||
|     this.initSF6(); | ||||
| @ -199,7 +198,7 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|           } as SFSelectWidgetSchema | ||||
|         } | ||||
|       }, | ||||
|     require: ['deadlineTime'] | ||||
|         required: ['shipperAppUserId', 'enterpriseProjectId','enterpriseInfoId', 'deadlineTime', 'dispatchId'] | ||||
|     }; | ||||
|     this.ui1 = { | ||||
|       '*': { | ||||
| @ -224,34 +223,12 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|       .subscribe(res => { | ||||
|         this.sf1.getProperty('/enterpriseProjectId')!.schema.enum = res; | ||||
|         this.sf1.getProperty('/enterpriseProjectId')!.widget.reset(res); | ||||
|         console.log('12345645454545454=============') | ||||
|         console.log(this.enterpriseProjectIds) | ||||
|         console.log(res) | ||||
|         if(this.enterpriseProjectIds) { | ||||
|           this.sf1.setValue('/enterpriseProjectId', this.enterpriseProjectIds); | ||||
|         } | ||||
|       }); | ||||
|   } | ||||
|   // initSF2() { | ||||
|   //   this.schema2 = { | ||||
|   //     properties: { | ||||
|   //       name1: { | ||||
|   //         type: 'string', | ||||
|   //         title: '发货模板', | ||||
|   //         ui: { | ||||
|   //           widget: 'custom', | ||||
|   //           placeholder: '请输入' | ||||
|   //         } | ||||
|   //       } | ||||
|   //     } | ||||
|   //   }; | ||||
|   //   this.ui2 = { | ||||
|   //     '*': { | ||||
|   //       spanLabelFixed: 90, | ||||
|   //       grid: { span: 12 } | ||||
|   //     } | ||||
|   //   }; | ||||
|   // } | ||||
|   | ||||
|   initSF3() { | ||||
|     this.schema3 = { | ||||
|       properties: { | ||||
| @ -459,6 +436,86 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|   initSF6() { | ||||
|     this.schema7 = { | ||||
|       properties: { | ||||
|         stateReceipt: { | ||||
|           type: 'string', | ||||
|           title: '是否回单', | ||||
|           enum: [ | ||||
|             { label: '需要', value: true }, | ||||
|             { label: '不需要', value: false } | ||||
|           ], | ||||
|           ui: { | ||||
|             widget: 'select', | ||||
|             errors: { required: '请选择' }, | ||||
|             placeholder: '请选择' | ||||
|           } | ||||
|         }, | ||||
|         receiptType: { | ||||
|           type: 'string', | ||||
|           title: '回单类型', | ||||
|           ui: { | ||||
|             widget: 'dict-select', | ||||
|             params: { dictKey: 'receipt:type' }, | ||||
|             containsAllLabel: false, | ||||
|             placeholder: '请选择', | ||||
|             errors: { required: '请选择' }, | ||||
|             visibleIf: { | ||||
|               stateReceipt: value => value === true | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         receiptAddressId: { | ||||
|           type: 'string', | ||||
|           title: '选择地址', | ||||
|           ui: { | ||||
|             widget: 'custom', | ||||
|             placeholder: '请点击选择收回单地址', | ||||
|             // validator: val => (this.sf6?.value?.receiptType === '2' ? [{ keyword: 'required', message: '请点击选择收回单地址' }] : []), | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           default: '' | ||||
|         }, | ||||
|         receiptUserName: { | ||||
|           type: 'string', | ||||
|           title: '联系人', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         phon: { | ||||
|           type: 'string', | ||||
|           title: '联系电话', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         area: { | ||||
|           type: 'string', | ||||
|           title: '所在地区', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         address: { | ||||
|           type: 'string', | ||||
|           title: '详细地址', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         paymentDays: { | ||||
|           type: 'string', | ||||
|           title: '到货后', | ||||
| @ -479,7 +536,7 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|           } as SFTextareaWidgetSchema | ||||
|         } | ||||
|       }, | ||||
|       required: ['paymentDays'] | ||||
|       required: ['paymentDays','stateReceipt'] | ||||
|     }; | ||||
|     this.ui7 = { | ||||
|       '*': { | ||||
| @ -583,6 +640,17 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|       }); | ||||
|     } | ||||
|   submit(submitType?: string): void { | ||||
|     Object.keys(this.validateForm1.controls).forEach(key => { | ||||
|       this.validateForm1.controls[key].markAsDirty(); | ||||
|       this.validateForm1.controls[key].updateValueAndValidity(); | ||||
|     }); | ||||
|     this.sf1.validator({ emitError: true }); | ||||
|     this.sf3.validator({ emitError: true }); | ||||
|     this.sf4.validator({ emitError: true }); | ||||
|     this.sf7.validator({ emitError: true }); | ||||
|     if (this.validateForm1.invalid || !this.sf3.valid || !this.sf1.valid|| !this.sf4.valid || !this.sf7.valid) { | ||||
|       return; | ||||
|     } | ||||
|     console.log(this.startInfo) | ||||
|     if(typeof(this.validateForm1.value.modifyTime) !== 'string' ) { | ||||
|       var c = new Date(this.validateForm1.value.modifyTime);   | ||||
| @ -592,9 +660,7 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|       var c = new Date(this.validateForm1.value.createTime);   | ||||
|       this.validateForm1.value.createTime = c.getFullYear() + '-' + (c.getMonth() + 1) + '-' + c.getDate() + ' ' + c.getHours() + ':' + c.getMinutes() + ':' + c.getSeconds() | ||||
|     } | ||||
|     // if (this.validateForm1.invalid) { | ||||
|     //   return; | ||||
|     // } | ||||
|  | ||||
|     const params: any = { | ||||
|       ...this.sf1.value, | ||||
|       ...this.sf7.value, | ||||
| @ -620,7 +686,6 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|     }  else if(this.PageStatus === '大宗下一单') { | ||||
|       this.requests(this.service.$api_set_saveAnotherBulkOrder, params); | ||||
|     } | ||||
|     | ||||
|   } | ||||
|    | ||||
|   requests(url: any, params: any) { | ||||
| @ -666,7 +731,23 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|         } | ||||
|       }); | ||||
|   } | ||||
|  | ||||
|   backBillChange() { | ||||
|     const modalRef = this.modalService.create({ | ||||
|       nzTitle: '选择收回单地址', | ||||
|       nzContent: PublishAddressListComponent, | ||||
|       nzWidth: 900, | ||||
|       nzComponentParams: { spuStatus: '2' }, | ||||
|       nzOnOk: item => { | ||||
|         const data = item.seleteData; | ||||
|         if (JSON.stringify(data) === '{}') return; | ||||
|         this.sf7.setValue('/receiptAddressId', data.id); | ||||
|         this.sf7.setValue('/receiptUserName', data.contactName); | ||||
|         this.sf7.setValue('/phon', data.contactTelephone); | ||||
|         this.sf7.setValue('/area', `${data.province}-${data.city}-${data.area}`) | ||||
|         this.sf7.setValue('/address', data.detailedAddress); | ||||
|       } | ||||
|     }); | ||||
|   } | ||||
|  // 打开地图 | ||||
|  openMap(type: string, index: number) { | ||||
|   const modalRef = this.modalService.create({ | ||||
| @ -850,6 +931,13 @@ export class  SupplyManagementBulkPublishComponent implements OnInit { | ||||
|      } | ||||
|     this.totalFees = res?.freightPrice || '0'; | ||||
|     this.sf7data = { | ||||
|       stateReceipt: res?.supplementaryInformationVO?.stateReceipt, | ||||
|       receiptType: res?.receiptType || '', | ||||
|       receiptAddressId: res?.receiptAddressId || '', | ||||
|       receiptUserName: res?.supplementaryInformationVO?.receiptUserName || '', | ||||
|       area: res?.supplementaryInformationVO?.area || '', | ||||
|       phon: res?.supplementaryInformationVO?.phon || '', | ||||
|       address: res?.supplementaryInformationVO?.address || '', | ||||
|       paymentDays: res?.paymentDays || '', | ||||
|       remarks: res?.remarks || '' | ||||
|     }; | ||||
|  | ||||
| @ -154,6 +154,15 @@ | ||||
|   <div nz-row> | ||||
|     <div nz-col nzSpan="12"> | ||||
|       <sf #sf6 [schema]="schema6" [button]="'none'" [ui]="ui6" [formData]="sf6data"> | ||||
|         <ng-template sf-template="receiptAddressId" let-i let-ui="ui"> | ||||
|           <input | ||||
|             nz-input | ||||
|             [ngModel]="i.value" | ||||
|             (ngModelChange)="i.setValue($event)" | ||||
|             placeholder="请点击选择收回单地址" | ||||
|             (click)="backBillChange()" | ||||
|           /> | ||||
|         </ng-template> | ||||
|         <ng-template sf-template="paymentDays" let-i let-ui="ui"> | ||||
|           <div nz-row> | ||||
|             <div class="align-center" style="width: 350px;"> | ||||
|  | ||||
| @ -219,11 +219,11 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit { | ||||
|           } as SFSelectWidgetSchema | ||||
|         } | ||||
|       }, | ||||
|       required: ['deadlineTime'] | ||||
|       required: ['shipperAppUserId', 'enterpriseProjectId','enterpriseInfoName','enterpriseInfoId', 'deadlineTime', 'dispatchId'] | ||||
|     }; | ||||
|     this.ui1 = { | ||||
|       '*': { | ||||
|         spanLabelFixed: 90, | ||||
|         spanLabelFixed: 110, | ||||
|         grid: { span: 12 } | ||||
|       }, | ||||
|       $enterpriseInfoName: { | ||||
| @ -434,6 +434,86 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit { | ||||
|   initSF6() { | ||||
|     this.schema6 = { | ||||
|       properties: { | ||||
|         stateReceipt: { | ||||
|           type: 'string', | ||||
|           title: '是否回单', | ||||
|           enum: [ | ||||
|             { label: '需要', value: true }, | ||||
|             { label: '不需要', value: false } | ||||
|           ], | ||||
|           ui: { | ||||
|             widget: 'select', | ||||
|             errors: { required: '请选择' }, | ||||
|             placeholder: '请选择' | ||||
|           } | ||||
|         }, | ||||
|         receiptType: { | ||||
|           type: 'string', | ||||
|           title: '回单类型', | ||||
|           ui: { | ||||
|             widget: 'dict-select', | ||||
|             params: { dictKey: 'receipt:type' }, | ||||
|             containsAllLabel: false, | ||||
|             placeholder: '请选择', | ||||
|             errors: { required: '请选择' }, | ||||
|             visibleIf: { | ||||
|               stateReceipt: value => value === true | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         receiptAddressId: { | ||||
|           type: 'string', | ||||
|           title: '选择地址', | ||||
|           ui: { | ||||
|             widget: 'custom', | ||||
|             placeholder: '请点击选择收回单地址', | ||||
|             // validator: val => (this.sf6?.value?.receiptType === '2' ? [{ keyword: 'required', message: '请点击选择收回单地址' }] : []), | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           default: '' | ||||
|         }, | ||||
|         receiptUserName: { | ||||
|           type: 'string', | ||||
|           title: '联系人', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         phon: { | ||||
|           type: 'string', | ||||
|           title: '联系电话', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         area: { | ||||
|           type: 'string', | ||||
|           title: '所在地区', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         address: { | ||||
|           type: 'string', | ||||
|           title: '详细地址', | ||||
|           ui: { | ||||
|             visibleIf: { | ||||
|               receiptType: value => value === '2' | ||||
|             } | ||||
|           }, | ||||
|           readOnly: true | ||||
|         }, | ||||
|         paymentDays: { | ||||
|           type: 'string', | ||||
|           title: '到货后', | ||||
| @ -454,7 +534,7 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit { | ||||
|           } as SFTextareaWidgetSchema | ||||
|         } | ||||
|       }, | ||||
|       required: ['paymentDays'] | ||||
|       required: ['paymentDays','stateReceipt'] | ||||
|     }; | ||||
|     this.ui6 = { | ||||
|       '*': { | ||||
| @ -463,7 +543,23 @@ export class SupplyManagementBulkReleasePublishComponent implements OnInit { | ||||
|       } | ||||
|     }; | ||||
|   } | ||||
|  | ||||
|   backBillChange() { | ||||
|     const modalRef = this.modalService.create({ | ||||
|       nzTitle: '选择收回单地址', | ||||
|       nzContent: PublishAddressListComponent, | ||||
|       nzWidth: 900, | ||||
|       nzComponentParams: { spuStatus: '2' }, | ||||
|       nzOnOk: item => { | ||||
|         const data = item.seleteData; | ||||
|         if (JSON.stringify(data) === '{}') return; | ||||
|         this.sf6.setValue('/receiptAddressId', data.id); | ||||
|         this.sf6.setValue('/receiptUserName', data.contactName); | ||||
|         this.sf6.setValue('/phon', data.contactTelephone); | ||||
|         this.sf6.setValue('/area', `${data.province}-${data.city}-${data.area}`) | ||||
|         this.sf6.setValue('/address', data.detailedAddress); | ||||
|       } | ||||
|     }); | ||||
|   } | ||||
|   //指派熟车 | ||||
|   chooseFamifiar(item: any) { | ||||
|     const modalRef = this.modalService.create({ | ||||
|  | ||||
| @ -109,7 +109,6 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { | ||||
|       this.PageStatus = '大宗下一单'; | ||||
|     } | ||||
|     this.initSF1(); | ||||
|     // this.initSF2(); | ||||
|     this.initSF3(); | ||||
|     this.initSF4(); | ||||
|     this.initSF5(); | ||||
| @ -204,7 +203,8 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { | ||||
|             asyncData: () => this.shipperSrv.getStaffList2() | ||||
|           } as SFSelectWidgetSchema | ||||
|         } | ||||
|       } | ||||
|       }, | ||||
|       required: ['shipperAppUserId','enterpriseProjectId','dispatchId'] | ||||
|     }; | ||||
|     this.ui1 = { | ||||
|       '*': { | ||||
| @ -213,27 +213,6 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { | ||||
|       } | ||||
|     }; | ||||
|   } | ||||
|  | ||||
|   // initSF2() { | ||||
|   //   this.schema2 = { | ||||
|   //     properties: { | ||||
|   //       name1: { | ||||
|   //         type: 'string', | ||||
|   //         title: '发货模板', | ||||
|   //         ui: { | ||||
|   //           widget: 'custom', | ||||
|   //           placeholder: '请输入' | ||||
|   //         } | ||||
|   //       } | ||||
|   //     } | ||||
|   //   }; | ||||
|   //   this.ui2 = { | ||||
|   //     '*': { | ||||
|   //       spanLabelFixed: 90, | ||||
|   //       grid: { span: 12 } | ||||
|   //     } | ||||
|   //   }; | ||||
|   // } | ||||
|   initSF3() { | ||||
|     this.schema3 = { | ||||
|       properties: { | ||||
| @ -420,7 +399,8 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { | ||||
|             placeholder: '请输入' | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|       }, | ||||
|       required: ['goodsValue'] | ||||
|     }; | ||||
|     this.ui5 = { | ||||
|       '*': { | ||||
| @ -524,7 +504,7 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { | ||||
|           } as SFTextareaWidgetSchema | ||||
|         } | ||||
|       }, | ||||
|       required: ['stateReceipt', 'receiptType', 'receiptAddressId'] | ||||
|       required: ['stateReceipt', 'receiptType', 'receiptAddressId',] | ||||
|     }; | ||||
|     this.ui6 = { | ||||
|       '*': { | ||||
| @ -769,16 +749,17 @@ export class SupplyManagementOnecarPublishComponent implements OnInit { | ||||
|       }); | ||||
|     } | ||||
|   submit(submitType?: string): void { | ||||
|     console.log('进来了'); | ||||
|     Object.keys(this.validateForm1.controls).forEach(key => { | ||||
|       this.validateForm1.controls[key].markAsDirty(); | ||||
|       this.validateForm1.controls[key].updateValueAndValidity(); | ||||
|     }); | ||||
|     this.sf1.validator({ emitError: true }); | ||||
|     this.sf3.validator({ emitError: true }); | ||||
|     this.sf4.validator({ emitError: true }); | ||||
|     this.sf6.validator({ emitError: true }); | ||||
|     this.sf7.validator({ emitError: true }); | ||||
|     if (this.validateForm1.invalid || !this.sf3.valid || !this.sf4.valid || !this.sf6.valid || !this.sf7.valid) { | ||||
|     console.log(this.sf1.valid) | ||||
|     if (this.validateForm1.invalid || !this.sf3.valid || !this.sf1.valid|| !this.sf4.valid || !this.sf6.valid || !this.sf7.valid) { | ||||
|       return; | ||||
|     } | ||||
|     if (typeof this.validateForm1.value.unloadingTime !== 'string') { | ||||
|  | ||||
| @ -218,11 +218,12 @@ export class SupplyManagementReleasePublishComponent implements OnInit { | ||||
|             asyncData: () => this.shipperSrv.getStaffList2() | ||||
|           } as SFSelectWidgetSchema | ||||
|         } | ||||
|        } | ||||
|        }, | ||||
|        required: ['shipperAppUserId','enterpriseProjectId','enterpriseInfoName','dispatchId'] | ||||
|      }; | ||||
|      this.ui1 = { | ||||
|        '*': { | ||||
|          spanLabelFixed: 90, | ||||
|          spanLabelFixed: 110, | ||||
|          grid: { span: 12 } | ||||
|        }, | ||||
|        $enterpriseInfoName: { | ||||
| @ -694,11 +695,12 @@ export class SupplyManagementReleasePublishComponent implements OnInit { | ||||
|        this.validateForm1.controls[key].markAsDirty(); | ||||
|        this.validateForm1.controls[key].updateValueAndValidity(); | ||||
|      }); | ||||
|      this.sf1.validator({ emitError: true }); | ||||
|      this.sf3.validator({ emitError: true }); | ||||
|      this.sf4.validator({ emitError: true }); | ||||
|      this.sf6.validator({ emitError: true }); | ||||
|      this.sf7.validator({ emitError: true }); | ||||
|      if (this.validateForm1.invalid || !this.sf3.valid || !this.sf4.valid || !this.sf6.valid || !this.sf7.valid) { | ||||
|      if (this.validateForm1.invalid || !this.sf1.valid || !this.sf3.valid || !this.sf4.valid || !this.sf6.valid || !this.sf7.valid) { | ||||
|        return; | ||||
|      } | ||||
|   | ||||
|  | ||||
| @ -22,7 +22,7 @@ | ||||
|       </div> | ||||
|       <div class="mt-sm mb-sm" nz-row> | ||||
|         <div> | ||||
|           <b>总费用:<span class="text-red-light text-md">{{i?.shippingInformationVO?.totalFee | currency: '¥'}}</span></b> | ||||
|           <b>总费用:<span class="text-red-light text-md">{{i?.totalAmount | currency: '¥'}}</span></b> | ||||
|         </div> | ||||
|       </div> | ||||
|       <nz-divider></nz-divider> | ||||
|  | ||||
| @ -456,7 +456,7 @@ export class FreightComponentsListNewComponent implements OnInit { | ||||
|               maxLength: 8, | ||||
|               ui: { | ||||
|                 grid: { xxl: 13, xl: 18, lg: 24, md: 24 }, | ||||
|                 placeholder: '请输入营业执照上的法人姓名' | ||||
|                 placeholder: '请输入法人姓名' | ||||
|               } | ||||
|             }, | ||||
|             certificateType: { | ||||
| @ -638,7 +638,7 @@ export class FreightComponentsListNewComponent implements OnInit { | ||||
|           maxLength: 8, | ||||
|           ui: { | ||||
|             grid: { xxl: 13, xl: 18, lg: 24, md: 24 }, | ||||
|             placeholder: '请输入营业执照上的企业管理员姓名' | ||||
|             placeholder: '请输入企业管理员姓名' | ||||
|           } | ||||
|         }, | ||||
|         certificateNumber: { | ||||
| @ -649,7 +649,7 @@ export class FreightComponentsListNewComponent implements OnInit { | ||||
|           maxLength: 18, | ||||
|           ui: { | ||||
|             grid: { xxl: 13, xl: 18, lg: 24, md: 24 }, | ||||
|             placeholder: '请输入法定代表人身份证号码' | ||||
|             placeholder: '请输入企业管理员身份证号' | ||||
|           } | ||||
|         }, | ||||
|         tipsD: { title: '企业授权函', type: 'string', ui: { widget: 'custom' }, default: 1 }, | ||||
|  | ||||
| @ -109,8 +109,8 @@ export class VehicleComponentsAuditComponent implements OnInit { | ||||
|           type: 'string', | ||||
|           title: '是否挂靠', | ||||
|           enum: [ | ||||
|             { label: '是', value: true }, | ||||
|             { label: '否', value: false }, | ||||
|             { label: '是', value: 1 }, | ||||
|             { label: '否', value: 0 }, | ||||
|           ], | ||||
|           ui: { | ||||
|             widget: 'select', | ||||
| @ -119,15 +119,7 @@ export class VehicleComponentsAuditComponent implements OnInit { | ||||
|         saveUser: { | ||||
|           type: 'string', | ||||
|           title: '录入人员', | ||||
|           enum: [ | ||||
|             { label: '全部', value: '' }, | ||||
|             { label: '正常', value: 0 }, | ||||
|             { label: '冻结', value: 1 }, | ||||
|             { label: '废弃', value: 2 }, | ||||
|           ], | ||||
|           default: '', | ||||
|           ui: { | ||||
|             widget: 'select', | ||||
|             visibleIf: { | ||||
|               expand: (value: boolean) => value, | ||||
|             }, | ||||
|  | ||||
| @ -1,7 +1,7 @@ | ||||
| <!-- | ||||
|  * @Author: your name | ||||
|  * @Date: 2021-11-29 15:22:34 | ||||
|  * @LastEditTime: 2021-12-17 17:29:51 | ||||
|  * @LastEditTime: 2022-01-11 13:36:02 | ||||
|  * @LastEditors: Please set LastEditors | ||||
|  * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE | ||||
|  * @FilePath: \tms-obc-web\src\app\routes\usercenter\components\freight\list\list.component.html | ||||
| @ -67,6 +67,11 @@ | ||||
|           {{ item?.isSelf ? '是' : '否' }} | ||||
|       </div> | ||||
|     </ng-template> | ||||
|     <ng-template st-row="putOnRecord" let-item let-index="index"> | ||||
|         <div> | ||||
|           {{ item?.putOnRecord ? '是' : '否' }} | ||||
|       </div> | ||||
|     </ng-template> | ||||
|     <ng-template st-row="approvalAuditStatus" let-item let-index="index"> | ||||
|       <div> | ||||
|         <span *ngIf="item?.auditStatusEnum === -1 || item?.auditStatusEnum === '-1' && item?.isSelf">未上传</span> | ||||
|  | ||||
| @ -156,8 +156,8 @@ export class VehicleComponentsListComponent implements OnInit { | ||||
|           type: 'string', | ||||
|           title: '是否挂靠', | ||||
|           enum: [ | ||||
|             { label: '是', value: true }, | ||||
|             { label: '否', value: false }, | ||||
|             { label: '是', value: 1 }, | ||||
|             { label: '否', value: 0 }, | ||||
|           ], | ||||
|           ui: { | ||||
|             widget: 'select', | ||||
| @ -197,6 +197,20 @@ export class VehicleComponentsListComponent implements OnInit { | ||||
|             }, | ||||
|           }, | ||||
|         }, | ||||
|         // putOnRecord: { | ||||
|         //   type: 'string', | ||||
|         //   title: '是否已备案', | ||||
|         //   enum: [ | ||||
|         //     { label: '是', value: 1 }, | ||||
|         //     { label: '否', value: 0 }, | ||||
|         //   ], | ||||
|         //   ui: { | ||||
|         //     widget: 'select', | ||||
|         //     visibleIf: { | ||||
|         //       expand: (value: boolean) => value, | ||||
|         //     }, | ||||
|         //   }, | ||||
|         // }, | ||||
|       }, | ||||
|     }; | ||||
|     this.ui = { '*': { spanLabelFixed: 130, grid: { span: 8, gutter: 4 }, enter: () => this.st.load() } }; | ||||
| @ -240,6 +254,7 @@ export class VehicleComponentsListComponent implements OnInit { | ||||
|       { title: '所有人', className: 'text-center', index: 'carOwner' }, | ||||
|       { title: '是否挂靠', className: 'text-center', render: 'isSelf', }, | ||||
|       { title: '挂靠协议', className: 'text-center', render: 'approvalAuditStatus' }, | ||||
|       // { title: '是否已备案', className: 'text-center', render: 'putOnRecord', }, | ||||
|  | ||||
|       { | ||||
|         title: '操作', | ||||
| @ -253,6 +268,13 @@ export class VehicleComponentsListComponent implements OnInit { | ||||
|               // this.router.navigate(['./view', item.id], { relativeTo: this.ar, queryParams: { tenantId: item.tenantId } }); | ||||
|             }, | ||||
|           }, | ||||
|           // { | ||||
|           //   text: '申请备案', | ||||
|           //   click: (item) => { | ||||
|                | ||||
|             | ||||
|           //   }, | ||||
|           // }, | ||||
|         ], | ||||
|       }, | ||||
|     ]; | ||||
|  | ||||
| @ -1,7 +1,7 @@ | ||||
| <!-- | ||||
|  * @Author: your name | ||||
|  * @Date: 2021-12-24 15:38:08 | ||||
|  * @LastEditTime: 2022-01-05 21:02:17 | ||||
|  * @LastEditTime: 2022-01-10 21:03:37 | ||||
|  * @LastEditors: Please set LastEditors | ||||
|  * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE | ||||
|  * @FilePath: \tms-obc-web\src\app\routes\sys-setting\components\crm-management\crm-management.component.html | ||||
| @ -39,21 +39,34 @@ | ||||
|  | ||||
| <nz-card class="content-box"> | ||||
|  | ||||
|     <div class="d-flex justify-content-end mb-sm"> | ||||
|         <div> | ||||
|             <button nz-button nzType="primary" (click)="roleAction('',1)" >新增CRM客户</button> | ||||
|         </div> | ||||
|     </div> | ||||
|     <st #st [data]="service.$api_get_crmCustomer_page" [columns]="columns" | ||||
|         [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" | ||||
|         [res]="{ reName: { list: 'data.records', total: 'data.total' } }" | ||||
|         [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" | ||||
|         [loading]="service.http.loading" [scroll]="{ y: '370px' }" (change)="stChange($event)"> | ||||
|         <ng-template st-row="customerType" let-item let-index="index"> | ||||
|             <div> | ||||
|               <span *ngIf="item?.customerType == 1">客户</span> | ||||
|               <span *ngIf="item?.customerType == 2">供应商</span> | ||||
|             </div> | ||||
|           </ng-template> | ||||
|     </st> | ||||
|   <nz-tabset> | ||||
|     <nz-tab nzTitle="费用明细"> | ||||
|       <st #st [data]="service.$api_get_crmCustomer_page" [columns]="columns" | ||||
|       [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" | ||||
|       [res]="{ reName: { list: 'data.records', total: 'data.total' } }" | ||||
|       [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" | ||||
|       [loading]="service.http.loading" [scroll]="{ y: '370px' }" (change)="stChange($event)"> | ||||
|       <ng-template st-row="customerType" let-item let-index="index"> | ||||
|           <div> | ||||
|             <span *ngIf="item?.customerType == 1">客户</span> | ||||
|             <span *ngIf="item?.customerType == 2">供应商</span> | ||||
|           </div> | ||||
|         </ng-template> | ||||
|   </st> | ||||
|     </nz-tab> | ||||
|     <nz-tab nzTitle="开票信息"> | ||||
|       <st #st [data]="service.$api_get_crmCustomer_page" [columns]="columns" | ||||
|       [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" | ||||
|       [res]="{ reName: { list: 'data.records', total: 'data.total' } }" | ||||
|       [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" | ||||
|       [loading]="service.http.loading" [scroll]="{ y: '370px' }" (change)="stChange($event)"> | ||||
|       <ng-template st-row="customerType" let-item let-index="index"> | ||||
|           <div> | ||||
|             <span *ngIf="item?.customerType == 1">客户</span> | ||||
|             <span *ngIf="item?.customerType == 2">供应商</span> | ||||
|           </div> | ||||
|         </ng-template> | ||||
|   </st> | ||||
|     </nz-tab> | ||||
|   </nz-tabset> | ||||
| </nz-card> | ||||
|  | ||||
| @ -26,19 +26,16 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit { | ||||
|   editId = false; | ||||
|  | ||||
|   columns: STColumn[] = [ | ||||
|     { title: '运单编号', index: 'customerName' }, | ||||
|     { title: '司机', index: 'customerShortName' }, | ||||
|     { title: '异常类型', index: 'customerCode' }, | ||||
|     { title: '异常内容', index: 'customerCode' }, | ||||
|     { | ||||
|       title: '操作', | ||||
|       buttons: [ | ||||
|         { | ||||
|           text: '编辑', | ||||
|           click: item => this.roleAction(item, 2) | ||||
|         }, | ||||
|       ] | ||||
|     } | ||||
|     { title: '异常编号', index: 'customerName' }, | ||||
|     { title: '关联运单号', index: 'customerName' }, | ||||
|     { title: '网络货运人', index: 'customerName' }, | ||||
|     { title: '货主', index: 'customerName' }, | ||||
|     { title: '装货地', index: 'customerName' }, | ||||
|     { title: '卸货地', index: 'customerName' }, | ||||
|     { title: '承运司机', index: 'customerName' }, | ||||
|     { title: '异常信息', index: 'customerName' }, | ||||
|     { title: '异常图片', index: 'customerName' }, | ||||
|     { title: '上报时间', index: 'customerName' }, | ||||
|   ]; | ||||
|  | ||||
|   selectedRows: any[] = []; | ||||
|  | ||||
		Reference in New Issue
	
	Block a user