fantasy-ngzorro 1.1.2 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var x=function(){return(x=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};function z(e,t,n,o){var i,a=arguments.length,r=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,n,o);else for(var l=e.length-1;l>=0;l--)(i=e[l])&&(r=(a<3?i(r):a>3?i(t,n,r):i(t,n))||r);return a>3&&r&&Object.defineProperty(t,n,r),r}function I(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function v(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function w(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,i,a=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(o=a.next()).done;)r.push(o.value)}catch(e){i={error:e}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return r}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(w(arguments[t]));return e}var C=function(){function e(){}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-button-group",template:'<nz-content class="hd-button-group-container">\n <div class="hd-button-group-left">\n <ng-container *ngTemplateOutlet="buttonGroupLeft"></ng-container>\n </div>\n <div class="hd-button-group-right">\n <ng-container *ngTemplateOutlet="buttonGroupRight"></ng-container>\n </div>\n</nz-content>\n',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-button-group-container{display:flex;align-items:center;justify-content:space-between}.hd-button-group-container .hd-button-group-left ::ng-deep hd-button{margin-right:12px}.hd-button-group-container .hd-button-group-right ::ng-deep hd-button{margin-left:12px}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={buttonGroupLeft:[{type:t.ContentChild,args:["buttonGroupLeft",{static:!1}]}],buttonGroupRight:[{type:t.ContentChild,args:["buttonGroupRight",{static:!1}]}]},e}();var S=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,i.NgZorroAntdModule],declarations:[C],exports:[C]}]}],e}(),O={primary:"primary",dashed:"dashed",danger:"danger",default:"default",link:"link",submit:"submit",reset:"reset",add:"add"},L={normal:"normal",small:"small"},k=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),D=function(){function e(){this.type=O.default,this.size=L.normal,this.disabled=!1,this.clickAction=new t.EventEmitter,this.nzOnConfirm=new t.EventEmitter}return e.prototype.ngOnInit=function(){if((!1===this.loading||!0===this.loading)&&0===this.clickAction.observers.length&&0===this.nzOnConfirm.observers.length)throw"存在loading效果的hd-button组件禁止使用click绑定点击事件,请使用clickAction绑定!";if("submit"===this.type)throw"禁止使用submit类型的按钮,请使用普通按钮+click事件触发表单提交!"},e.prototype.ngOnChanges=function(e){e&&e.loading&&(!0===e.loading.currentValue&&!1===e.loading.previousValue||!1===e.loading.currentValue&&!0===e.loading.previousValue)&&(this.disabled=!this.disabled)},e.prototype.innerClickAction=function(e){this.loading||this.clickAction.emit(e)},e.decorators=[{type:t.Component,args:[{selector:"hd-button",template:'<nz-content class="hd-button-container">\n <button nz-button [nzType]="type" [disabled]="disabled" [nzLoading]="loading"\n [class]="size===\'small\'? \'hd-button-small\' : \'\' + type===\'add\'? \'ant-btn-primary\' : \'\'"\n (click)="innerClickAction($event)">\n <i nz-icon *ngIf="type===\'add\'" nzType="plus" style="margin-right: 4px;"></i>\n \x3c!-- 插槽 --\x3e\n <ng-content></ng-content>\n </button>\n</nz-content>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-button-container{display:inline-block}.hd-button-container button{height:28px;line-height:28px;padding:0 16px!important;border:0;font-size:12px;border-radius:4px}.hd-button-container .hd-button-small{padding:0 6px!important}.hd-button-container button[disabled]{background-color:#c8c8c8;color:#fff}.hd-button-container .ant-btn-reset{color:#fff;background:#5d7267}.hd-button-container .ant-btn-reset:hover{background:#72877b}.hd-button-container .ant-btn-default{background:#fff;border-radius:4px;border:1px solid #ced0da;font-size:12px;font-weight:400;color:#2a3634;height:28px;line-height:26px}.hd-button-container .ant-btn-default:hover{color:#12a34f;border:1px solid #12a34f}.hd-button-container .ant-btn-warning{background:#fff;border-radius:4px;border:1px solid #ced0da;font-size:12px;font-weight:400;color:#2a3634;height:28px;line-height:26px}.hd-button-container .ant-btn-warning:hover{color:#f05b24;border:1px solid #f05b24}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={type:[{type:t.Input}],size:[{type:t.Input}],loading:[{type:t.Input}],disabled:[{type:t.Input}],clickAction:[{type:t.Output}],nzOnConfirm:[{type:t.Output}]},z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"loading",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"disabled",void 0),e}();var F=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,i.NgZorroAntdModule],declarations:[D],exports:[D]}]}],e}(),N=function(){function e(){this.formCols=new Array}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-detail-form",template:'<nz-content class="hd-detail-form-container">\n <nz-descriptions [nzColumn]="{ xxl: 4, xl: 3, lg: 3, md: 3, sm: 2, xs: 1 }">\n <ng-container *ngFor="let col of formCols">\n <nz-descriptions-item [nzTitle]="col.label">\n <span [ngStyle]="{\'color\': col?.color ? col.color : null}">{{(col.value === \'0\' || col.value === 0 || col.value\n )? col.value : \'&lt;空&gt;\'}}</span>\n </nz-descriptions-item>\n </ng-container>\n </nz-descriptions>\n</nz-content>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-detail-form-container ::ng-deep .ant-descriptions-item-content{word-break:break-all;color:rgba(0,0,0,.85);font-weight:400}.hd-detail-form-container ::ng-deep .ant-descriptions-item-label{color:rgba(0,0,0,.65)}.hd-detail-form-container ::ng-deep .ant-descriptions-item{padding-top:6px!important;padding-bottom:6px!important}.hd-detail-form-container ::ng-deep td{white-space:unset!important}.hd-detail-form-container .ng-star-inserted,.hd-detail-form-container ::ng-deep .ant-descriptions-item{padding-left:0!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={formCols:[{type:t.Input}]},e}();var T=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,i.NgZorroAntdModule],exports:[N],declarations:[N]}]}],e}(),E=function(){this.totalPages=0,this.totalElements=0,this.pageNumber=0,this.pageSize=10,this.hasContent=!1,this.hasNext=!1,this.content=[]};var P=function(){};var M=function(){this.showLabelAndValue=!1,this.hdDropdownMatchSelectWidth=!1,this.hdServerSearch=!1,this.hdShowItemCode=!1};var A=function(){this.min=0,this.max=99999999,this.step=1};var V=function(){function e(){this.showSelected=!1,this.allowDrop=!1,this.scroll={x:"1px"},this.selectField="billNumber",this.selectEvent=new t.EventEmitter,this.showTotal=!1,this.totalOption=[],this.columnsNumber=0,this.hdFrontPagination=!1,this.totalOptionList=[],this.tableData=new E,this.tableLoading=!1,this.tablePageIndex=1,this.tablePageSize=10,this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.listOfDisplayData=[],this.listOfAllData=[],this.mapOfCheckedId={},this.mapOfCheckList={}}return e.prototype.ngOnInit=function(){this.countSelected(),this.calculateTotal()},e.prototype.ngOnChanges=function(){this.countSelected(),this.calculateTotal()},e.prototype.countSelected=function(){var e=this;this.showSelected&&this.selectedField&&this.lines&&this.lines.length&&(this.lines.forEach((function(t){!0===t[e.selectedField]&&(e.mapOfCheckedId[t[e.selectField]]=!0,e.mapOfCheckList[t[e.selectField]]=t)})),this.lines.length===Object.keys(this.mapOfCheckList).length&&(this.isAllDisplayDataChecked=!0,this.isIndeterminate=!0))},Object.defineProperty(e.prototype,"LodashRound",{get:function(){return r.round},enumerable:!0,configurable:!0}),e.prototype.drop=function(e){l.moveItemInArray(this.lines,e.previousIndex,e.currentIndex),this.lines=JSON.parse(JSON.stringify(this.lines))},e.prototype.calculateTotal=function(){var e=this;this.showTotal&&this.lines&&this.lines.length&&(this.totalOptionList=new Array(Number(this.columnsNumber)-1).fill(""),this.totalOption.forEach((function(t){t.insertIndex&&(t.insertValue||0===t.insertValue)&&(e.totalOptionList[t.insertIndex-1]={value:t.insertValue,align:t.align||"right",showDecimal:t.showDecimal||!1})})))},e.prototype.currentPageDataChange=function(e){this.listOfDisplayData=e,this.refreshStatus()},e.prototype.resetStatus=function(){this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.mapOfCheckedId={},this.mapOfCheckList={},this.selectEvent.emit([])},e.prototype.refreshStatus=function(e,t){var n=this;void 0===e&&(e=!1),void 0===t&&(t=null),e&&t?!this.mapOfCheckList[t[this.selectField]]&&(this.mapOfCheckList[t[this.selectField]]=t):!e&&t&&this.mapOfCheckList[t[this.selectField]]&&delete this.mapOfCheckList[t[this.selectField]],this.isAllDisplayDataChecked=this.listOfDisplayData.every((function(e){return n.mapOfCheckedId[e[n.selectField]]})),this.isIndeterminate=this.listOfDisplayData.some((function(e){return n.mapOfCheckedId[e[n.selectField]]}))&&!this.isAllDisplayDataChecked,this.selectEvent&&this.selectEvent.emit(Object.values(this.mapOfCheckList))},e.prototype.checkAll=function(e){var t=this;this.listOfDisplayData.forEach((function(n){e?!t.mapOfCheckList[n[t.selectField]]&&(t.mapOfCheckList[n[t.selectField]]=n):t.mapOfCheckList[n[t.selectField]]&&delete t.mapOfCheckList[n[t.selectField]],t.mapOfCheckedId[n[t.selectField]]=e})),this.refreshStatus()},e.decorators=[{type:t.Component,args:[{selector:"hd-detail-lines",template:'<ng-container>\n <nz-table #hdTable [nzScroll]="scroll" class="hd-table-container" nzShowSizeChanger\n [nzFrontPagination]="hdFrontPagination" [nzShowQuickJumper]="hdFrontPagination" [nzShowTotal]="tableTotalTemplate"\n nzSize="middle" [nzData]="lines" [nzLoading]="tableLoading"\n (nzCurrentPageDataChange)="showSelected ? currentPageDataChange($event) : null">\n <thead>\n <tr>\n <th *ngIf="showSelected" nzWidth="40px" nzLeft="0px" nzShowCheckbox [(nzChecked)]="isAllDisplayDataChecked"\n [nzIndeterminate]="isIndeterminate" (nzCheckedChange)="checkAll($event)"></th>\n <ng-container *ngTemplateOutlet="detailLineHead"></ng-container>\n </tr>\n </thead>\n <tbody *ngIf="!allowDrop;else allowDropTemplate">\n <tr *ngFor="let data of hdTable.data;index as i">\n <td *ngIf="showSelected" nzWidth="40px" nzLeft="0px" nzShowCheckbox\n [(nzChecked)]="mapOfCheckedId[data[selectField]]" (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngTemplateOutlet="detailLineBody;context:{$implicit: data, index: i}"></ng-container>\n </tr>\n \x3c!-- 合计区域 --\x3e\n <tr *ngIf="showTotal" class="hd-table-total">\n <td *ngIf="showSelected"></td>\n <td>合计</td>\n <ng-container *ngFor="let totalOption of totalOptionList">\n <td [nzAlign]="totalOption.align ? totalOption.align : \'left\'">{{ (totalOption.value || totalOption.value ===\n 0) ? (((totalOption.value % 1 === 0) && !totalOption.showDecimal ) ? totalOption.value :\n LodashRound(totalOption.value,2).toFixed(2)) : \'\' }} </td>\n </ng-container>\n </tr>\n </tbody>\n <ng-template #allowDropTemplate>\n <tbody cdkDropList (cdkDropListDropped)="drop($event)">\n <tr *ngFor="let data of hdTable.data;index as i" cdkDrag>\n <td *ngIf="showSelected" nzWidth="40px" nzLeft="0px" nzShowCheckbox\n [(nzChecked)]="mapOfCheckedId[data[selectField]]" (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngTemplateOutlet="detailLineBody;context:{$implicit: data, index: i}"></ng-container>\n </tr>\n \x3c!-- 合计区域 --\x3e\n <tr *ngIf="showTotal" class="hd-table-total">\n <td *ngIf="showSelected"></td>\n <td>合计</td>\n <ng-container *ngFor="let totalOption of totalOptionList">\n <td [nzAlign]="totalOption.align ? totalOption.align : \'left\'">{{ (totalOption.value || totalOption.value\n === 0) ? (((totalOption.value % 1 === 0) && !totalOption.showDecimal ) ? totalOption.value :\n LodashRound(totalOption.value,2).toFixed(2)) : \'\' }} </td>\n </ng-container>\n </tr>\n </tbody>\n </ng-template>\n <ng-template #tableTotalTemplate>\n 共 {{lines.length}} 条数据\n </ng-template>\n </nz-table>\n</ng-container>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-table-container ::ng-deep .ant-pagination-options-quick-jumper input{border-radius:2px;border:1px solid #d9d9d9}.hd-table-container ::ng-deep .ant-pagination-options .ant-select-selection{border-radius:2px}.hd-table-container ::ng-deep .ant-table-thead>tr>th{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .ant-table-tbody>tr>td{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .hd-table-total>td{border:0!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={lines:[{type:t.Input}],showSelected:[{type:t.Input}],allowDrop:[{type:t.Input}],scroll:[{type:t.Input}],selectField:[{type:t.Input}],selectedField:[{type:t.Input}],selectEvent:[{type:t.Output}],detailLineHead:[{type:t.ContentChild,args:["detailLineHead",{static:!1}]}],detailLineBody:[{type:t.ContentChild,args:["detailLineBody",{static:!1}]}],showTotal:[{type:t.Input}],totalOption:[{type:t.Input}],columnsNumber:[{type:t.Input}],hdFrontPagination:[{type:t.Input}]},z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSelected",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"allowDrop",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTotal",void 0),e}();var H=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,p.NzTableModule,l.DragDropModule],declarations:[V],exports:[V],schemas:[t.NO_ERRORS_SCHEMA]}]}],e}(),R={"#FAB13B":["partshipped","committed","partValid"],"#9FA4A2":["initial","uncommitted","OFF_LINE"],"#F5222D":["delete","deleted","aborted","rejected"],"#3B77E3":["audited","finished","adjusted","invoiced","audit","submitted"],"#12A34F":["shipped","received","checked","using","reverse","valid","approved","ON_LINE"],"#F05B24":["picking","partialReceived","partDelete"]},W=(function(){function e(){}e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"})}(),function(){function e(){this.tip="详情"}return e.prototype.ngOnInit=function(){this.setStatusColor()},e.prototype.ngOnChanges=function(){this.setStatusColor()},e.prototype.setStatusColor=function(){for(var e in R)if(-1!==R[e].indexOf(this.state)){this.statusColor=e;break}},e.decorators=[{type:t.Component,args:[{selector:"hd-detail-tip",template:'<nz-content class="hd-detail-tip-container">\n <div *ngIf="stateText" class="hd-detail-tip-state" [ngStyle]="{\'background\': statusColor || \'#9FA4A2\'}">{{stateText}}\n </div>\n <div class="hd-detail-tip-billNumber">{{billNumber}}</div>\n <div *ngIf="tip" class="hd-detail-tip-name">&nbsp;&nbsp;/&nbsp;&nbsp;{{tip}}</div>\n</nz-content>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-detail-tip-container{display:flex;align-items:center}.hd-detail-tip-container .hd-detail-tip-state{padding:2px 6px;border-radius:2px;font-size:12px;font-weight:500;color:#fff;margin-right:8px}.hd-detail-tip-container .hd-detail-tip-billNumber{font-size:16px;font-weight:500;color:#2a3634}.hd-detail-tip-container .hd-detail-tip-name{font-size:14px;font-weight:500;color:#5d7267}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={state:[{type:t.Input}],stateText:[{type:t.Input}],billNumber:[{type:t.Input}],tip:[{type:t.Input}]},e}());var _=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,i.NgZorroAntdModule],declarations:[W],exports:[W]}]}],e}(),B=function(){function e(e){this.fb=e,this.searchEvent=new t.EventEmitter,this.isShowMore=!0,this.filterListModular=0}return e.prototype.ngOnInit=function(){this.init()},e.prototype.ngOnChanges=function(){this.init()},e.prototype.init=function(){var e=this;if(this.isShowMore=!0,!this.checkList(this.filterList))throw"filter组件数据格式不规范";this.filterListModular=this.filterList.length%4;var t={};this.filterList.forEach((function(n,o){t[n.name]=e.fb.control(n.value,[]),n.show=o<7})),this.validateFilterForm=this.fb.group(t)},e.prototype.triggerEvent=function(e,t,n){if(e&&n)e(t,n);else{if(!e)return;e(t)}},e.prototype.computeOffset=function(){return 4===this.filterList.length?18:this.isShowMore?0===this.filterListModular||this.filterList.length>7?0:6*(3-this.filterListModular):0===this.filterListModular?18:6*(3-this.filterListModular)},e.prototype.checkList=function(e){if(!e||e&&0===e.length)return!0;var t=[];if(e.forEach((function(e){t.push(e.name)})),y(new Set(t)).length!==e.length)throw"filter组件数据格式不规范,存在重复name值!";return!0},e.prototype.submitForm=function(){this.searchEvent.emit(this.validateFilterForm.getRawValue())},e.prototype.resetForm=function(){this.validateFilterForm.reset(),this.searchEvent.emit(this.validateFilterForm.getRawValue())},e.prototype.showMore=function(){var e=this;this.isShowMore=!this.isShowMore,this.filterList.forEach((function(t,n){t.show=!e.isShowMore||n<7}))},e.prototype.inputClean=function(e){var t={};t[e.name]=null,this.validateFilterForm.patchValue(t)},e.decorators=[{type:t.Component,args:[{selector:"hd-filter",template:'<form nz-form [formGroup]="validateFilterForm" class="ant-advanced-search-form hd-filter-container">\n \x3c!-- 整体结构 --\x3e\n <div nz-row [nzGutter]="24">\n \x3c!-- 对组件列表循环处理 --\x3e\n <ng-container *ngFor="let filter of filterList">\n <div nz-col [nzSpan]="6" [hidden]="!filter.show">\n <nz-form-item nzFlex>\n <nz-form-label class="hd-filter-label">{{filter.label}}</nz-form-label>\n <nz-form-control class="hd-filter-control">\n <ng-container [ngSwitch]="filter.type">\n \x3c!-- 这里数字对应枚举类型,可在hd-filter.service.ts文件中查看对应关系 --\x3e\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input nz-input [placeholder]="filter.placeholder ? filter.placeholder : \'请输入\' + filter.label"\n [formControlName]="filter.name"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)" />\n </nz-input-group>\n <ng-template #inputCleanTemplate><i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill"\n nzType="close-circle" *ngIf="validateFilterForm.get(filter.name).value"\n (click)="inputClean(filter)"></i></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select nzShowSearch [nzServerSearch]="filter.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="filter.selectOption.hdDropdownMatchSelectWidth ? filter.selectOption.hdDropdownMatchSelectWidth : false"\n nzAllowClear (nzOnSearch)="triggerEvent(filter.onSearchEvent || null, $event, filter.selectOption)"\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)"\n nzAllowClear>\n <nz-option *ngFor="let selectItem of filter.selectOption.selectList"\n [nzValue]="selectItem[filter.selectOption.value]" [nzLabel]="filter.selectOption.showLabelAndValue ? \'[\'+ selectItem[filter.selectOption.value] +\']\' +\n selectItem[filter.selectOption.label] : selectItem[filter.selectOption.label]"></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="filter.showTime"\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" [nzDisabledDate]="filter.hdDisabledDate"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)" nzShowTime\n nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n <nz-date-picker *ngIf="!filter.showTime"\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" [nzDisabledDate]="filter.hdDisabledDate"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="filter.name">\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)"\n </nz-range-picker>\n </ng-container>\n \x3c!-- 多项选择器 --\x3e\n <ng-container *ngSwitchCase="4">\n <nz-select\n [nzDropdownMatchSelectWidth]="filter.selectOption.hdDropdownMatchSelectWidth ? filter.selectOption.hdDropdownMatchSelectWidth : false"\n nzMode="multiple" nzShowSearch nzAllowClear\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" [nzServerSearch]="filter.selectOption.hdServerSearch || false"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)"\n (nzOnSearch)="triggerEvent(filter.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of filter.selectOption.selectList"\n [nzValue]="selectItem[filter.selectOption.value]" [nzLabel]="filter.selectOption.showLabelAndValue ? \'[\'+ selectItem[filter.selectOption.value] +\']\' +\n selectItem[filter.selectOption.label] : selectItem[filter.selectOption.label]"></nz-option>\n </nz-select>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n </div>\n </ng-container>\n\n <div class="hd-filter-btn" nz-col [nzSpan]="6" [nzOffset]="computeOffset()">\n <a *ngIf="filterList.length > 7" class="hd-filter-more" (click)="showMore()">\n {{isShowMore ? \'展开\' : \'收起\'}}\n <i nz-icon [nzType]="isShowMore ? \'down\' : \'up\'"></i>\n </a>\n <hd-button type="primary" (click)="submitForm()">查询</hd-button>\n <hd-button type="reset" (click)="resetForm()">重置</hd-button>\n </div>\n </div>\n</form>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-filter-container{padding:20px 23px;background:#fff;box-shadow:0 0 12px 0 rgba(93,114,103,.08);border-radius:4px;margin-bottom:8px!important;font-size:12px}.hd-filter-container .ant-row{margin-right:0!important;margin-left:0!important}.hd-filter-container .ant-col-6{padding-left:0!important;padding-right:0!important}.hd-filter-container .hd-filter-label{width:108px;word-break:break-all}.hd-filter-container .hd-filter-control{width:calc(100% - 108px)}.hd-filter-container ::ng-deep .ant-calendar-picker{width:100%}.hd-filter-container .hd-filter-more{color:#12a34f}.hd-filter-container .hd-filter-btn{height:40px;display:inline-flex;align-items:center;justify-content:flex-end}.hd-filter-container hd-button{margin-left:12px}.hd-filter-container ::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}.hd-filter-container ::ng-deep .ant-select-selection--single{height:28px!important}.hd-filter-container ::ng-deep .ant-input{height:28px!important}.hd-filter-container ::ng-deep .ant-calendar-range-picker-input{text-align:left!important}.hd-filter-container .ant-input-number{width:100%}"]}]}],e.ctorParameters=function(){return[{type:o.FormBuilder}]},e.propDecorators={filterList:[{type:t.Input}],searchEvent:[{type:t.Output}]},e}();var j=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F],declarations:[B],exports:[B]}]}],e}(),q="row",$=function(){};!function(){function e(){}e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"})}();var J=function(){function e(){this.type=q,this.background="inherit",this.style=new $}return e.prototype.ngOnInit=function(){this.style.background=this.background,this.type===q?(this.style.width="100%",this.style.height=this.size+"px"):(this.style.height="100%",this.style.width=this.size+"px")},e.decorators=[{type:t.Component,args:[{selector:"hd-space",template:'<nz-content>\n <div [ngStyle]="style"></div>\n</nz-content>\n',styles:[""]}]}],e.ctorParameters=function(){return[]},e.propDecorators={type:[{type:t.Input}],size:[{type:t.Input}],background:[{type:t.Input}]},e}();var G=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F],declarations:[J],exports:[J]}]}],e}(),Z=function(){function e(e,n){this.fb=e,this.ngZone=n,this.tableLoading=!1,this.showSearch=!1,this.operateButtons=["add","delete"],this.scroll={x:"1px"},this.changeEvent=new t.EventEmitter,this.showDeleteConfirm=!1,this.paginationPageIndex=1,this.paginationPageSize=10,this.showTotal=!1,this.totalOption=[],this.columnsNumber=0,this.totalOptionList=[],this.showForm=!1,this.storeFormLinesData=[],this.filterStoreFormLinesData=[],this.filterIndexStore=[],this.isFilterData=!1,this.formValid=!1}return e.prototype.ngOnInit=function(){this.storeFormLinesData=this.formLinesData,this.init()},Object.defineProperty(e.prototype,"linesFormArray",{get:function(){return this.validateHdFormLines.get("lines")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"LodashRound",{get:function(){return r.round},enumerable:!0,configurable:!0}),e.prototype.getValid=function(){return this.formValid},e.prototype.innerGetValid=function(){var e=this,t=this.fb.group({lines:this.fb.array([])});return this.storeFormLinesData.forEach((function(n){var i={};e.formLines.forEach((function(t){i[t.name]=e.fb.control({value:0===n[t.name]?0:n[t.name]||t.value||null,disabled:t.disabled},t.require?[o.Validators.required]:[]),t.selectOption&&t.selectOption.label&&(i[t.selectOption.label]=e.fb.control(n[t.selectOption.label]||null,[]))})),i.lineIndex=e.fb.control(t.get("lines").controls.length,[]);var a=e.fb.group(i);e.formLines.forEach((function(t){t.onChangeEvent&&a.get(t.name).valueChanges.subscribe((function(n){return e.triggerEvent(t.onChangeEvent,n,a)}))})),t.get("lines").insert(t.get("lines").controls.length,a)})),t.valid},e.prototype.getLines=function(){var e=this,t=[];return this.storeFormLinesData.forEach((function(n){var o={};e.formLines.forEach((function(e){o[e.name]=n[e.name]})),o.lineIndex=n.lineIndex,t.push(o)})),t},e.prototype.searchLines=function(){var e=this;if(!(this.storeFormLinesData.length<1)){if(this.tableLoading=!0,!this.filterStr)return this.isFilterData=!1,void this.setStoreData();var t=this.filterStr.trim().toLowerCase();this.isFilterData=!0,this.filterIndexStore=[];var n=this.storeFormLinesData.filter((function(n,o){var i,a;try{for(var r=v(e.formLines),l=r.next();!l.done;l=r.next()){var p=l.value;if(p.hide&&p.canSearch||!p.hide&&"uuid"!==p.name)if((n[p.name]?n[p.name].toString().toLowerCase():"").includes(t))return e.filterIndexStore.push(o),!0}}catch(e){i={error:e}}finally{try{l&&!l.done&&(a=r.return)&&a.call(r)}finally{if(i)throw i.error}}return!1}));this.filterStoreFormLinesData=n,this.formLinesData=n,this.init(!0)}},e.prototype.setStoreData=function(){this.formLinesData=this.storeFormLinesData,this.init(!0)},e.prototype.getStyle=function(e,t,n){var o={"min-width":n};return t.style&&(o=x({},o,t.style)),t.colorOption&&t.colorOption.name&&e.get(t.colorOption.name).value&&(o=x({},o,{color:e.get(t.colorOption.name).value})),o},e.prototype.ngOnChanges=function(e){e.formLinesData&&JSON.stringify(e.formLinesData.currentValue)!==JSON.stringify(e.formLinesData.previousValue)&&(this.storeFormLinesData&&0===this.storeFormLinesData.length&&(this.storeFormLinesData=this.formLinesData),this.init()),e.totalOption&&JSON.stringify(e.totalOption.currentValue)!==JSON.stringify(e.totalOption.previousValue)&&this.calculateTotal()},e.prototype.calculateTotal=function(){var e=this;this.showTotal&&(this.totalOptionList=new Array(Number(this.columnsNumber)-1).fill(""),this.totalOption.forEach((function(t){t.insertIndex&&(t.insertValue||0===t.insertValue)&&(e.totalOptionList[t.insertIndex-1]={value:t.insertValue,align:t.align||"left",showDecimal:t.showDecimal||!1})})))},e.prototype.init=function(e){var t=this;void 0===e&&(e=!1),this.paginationPageIndex=1,this.checkList(this.formLines)?(this.createForm(),e||this.formLinesData&&(!this.formLinesData||0!==this.formLinesData.length)?this.addFormLineWithData():(this.tableLoading=!1,this.addFormLine(),this.showForm=!0),this.validateHdFormLines.valueChanges.subscribe((function(e){return t.onHdFormValueChanged(e)})),this.onHdFormValueChanged()):this.tableLoading=!1},e.prototype.createForm=function(){this.validateHdFormLines=this.fb.group({lines:this.fb.array([])}),this.newLine=this.newLineItem()},e.prototype.newLineItem=function(){var e=this,t={};this.formLines.forEach((function(n){t[n.name]=e.fb.control({value:n.value,disabled:n.disabled}||null,n.require&&!n.hide?[o.Validators.required]:[])})),t.lineIndex=this.fb.control(this.linesFormArray.controls.length,[]),t.isHdFormLineSearchAdd=this.fb.control(this.isFilterData,[]);var n=this.fb.group(t);return this.formLines.forEach((function(t){t.onChangeEvent&&t.onChangeEvent&&n.get(t.name).valueChanges.subscribe((function(o){return e.triggerEvent(t.onChangeEvent,o,n)}))})),n},e.prototype.calculateLineNumber=function(){this.linesFormArray.controls.forEach((function(e,t){e.get("lineIndex").setValue(t+1,{emitEvent:!1})}))},e.prototype.addFormLineWithData=function(){var e=this;this.formLinesData.forEach((function(t){var n={};e.formLines.forEach((function(i){n[i.name]=e.fb.control({value:0===t[i.name]?0:t[i.name]||i.value||null,disabled:i.disabled},i.require?[o.Validators.required]:[]),i.selectOption&&i.selectOption.label&&(n[i.selectOption.label]=e.fb.control(t[i.selectOption.label]||null,[]))})),n.lineIndex=e.fb.control(e.linesFormArray.controls.length+1,[]);var i=e.fb.group(n);e.formLines.forEach((function(t){t.onChangeEvent&&i.get(t.name).valueChanges.subscribe((function(n){e.triggerEvent(t.onChangeEvent,n,i)}))})),e.linesFormArray.insert(e.linesFormArray.controls.length,i)})),this.tableLoading=!1,this.showForm=!0},e.prototype.addFormLine=function(e){this.linesFormArray.insert(e||this.linesFormArray.controls.length,this.newLineItem()),this.calculateLineNumber()},e.prototype.deleteFormLine=function(e){this.linesFormArray.removeAt(e-1),!this.isFilterData&&this.linesFormArray.controls&&0===this.linesFormArray.controls.length?this.addFormLine():(this.paginationPageIndex*this.paginationPageSize===this.linesFormArray.controls.length+this.paginationPageSize&&this.paginationPageIndex--,this.calculateLineNumber())},e.prototype.triggerEvent=function(e,t,n){e&&e(t,n)},e.prototype.pageIndexChange=function(e){this.paginationPageIndex=e},e.prototype.pageSizeChange=function(e){this.paginationPageSize=e},e.prototype.onHdFormValueChanged=function(e){var t=this;if(this.isFilterData)if(e&&e.lines&&0!==this.filterIndexStore.length){var n=e.lines;if(n.length===this.filterIndexStore.length)this.filterIndexStore.forEach((function(e,o){t.storeFormLinesData[e]=x({},t.filterStoreFormLinesData[o],n[o])}));else if(n.length>this.filterIndexStore.length){for(var o=this.validateHdFormLines.getRawValue().lines,i=-1,a=0;a<o.length;a++)if(o[a].isHdFormLineSearchAdd){i=a;break}-1!==i&&this.storeFormLinesData.splice(this.filterIndexStore[i-1]+1,0,o[i]),this.filterIndexStore.push(this.filterIndexStore[i-1]+1)}else{var r=-1,l=0;if(0===n.length)r=0;else for(a=0;a<n.length;a++){if(n[a].lineIndex-l>1){r=a;break}l++}if(-1!==r){this.storeFormLinesData=this.storeFormLinesData.filter((function(e,n){return n!==t.filterIndexStore[r]})),this.filterIndexStore.splice(r,1);for(a=0;a<this.filterIndexStore.length;a++)a>=r&&this.filterIndexStore[a]--}else{var p=this.filterIndexStore[this.filterIndexStore.length-1];this.storeFormLinesData=this.storeFormLinesData.filter((function(e,t){return t!==p})),this.filterIndexStore.pop()}}}else e&&e.lines&&(this.storeFormLinesData=e.lines);else e&&e.lines&&(this.storeFormLinesData=e.lines);this.isFilterData?this.formValid?this.formValid=this.validateHdFormLines.valid:this.validateHdFormLines.valid?this.formValid=this.innerGetValid():this.formValid=this.validateHdFormLines.valid:this.formValid=this.validateHdFormLines.valid,this.changeEvent.emit(this.validateHdFormLines)},e.prototype.checkList=function(e){if(!e||e&&0===e.length)return!1;var t=[],n=[];if(e.forEach((function(o){if(t.push(o.name),o.onSearchEvent&&o.selectOption&&(n=[],e.forEach((function(e){e.name!==o.selectOption.value&&e.name!==o.selectOption.label||n.push(e.name)})),n.length<2))throw"formLines组件数据格式不规范,字段"+o.name+"的selectOption的value、label字段未能在formLines中找到对应字段!"})),y(new Set(t)).length!==e.length)throw"formLines组件数据格式不规范,存在重复name值!";return!0},e.prototype.submitForm=function(){this.changeEvent.emit(this.validateHdFormLines.getRawValue())},e.prototype.resetForm=function(){for(var e=this.linesFormArray.controls.length;e>=0;e--)this.deleteFormLine(e);this.paginationPageIndex=1},e.prototype.inputClean=function(e,t){t.get(e.name).setValue(null)},e.prototype.selectValue=function(e){document.querySelector(e).select()},e.decorators=[{type:t.Component,args:[{selector:"hd-form-lines",template:'<hd-button-group *ngIf="showForm && showSearch">\n <ng-template #buttonGroupLeft>\n <nz-input-group [nzSuffix]="suffixIconSearch">\n <input type="text" nz-input (keyup.enter)="searchLines()" placeholder="请输入内容搜索" style="width: 300px;"\n [(ngModel)]="filterStr" />\n </nz-input-group>\n <ng-template #suffixIconSearch>\n <i nz-icon nzType="search" (click)="searchLines()"></i>\n </ng-template>\n </ng-template>\n</hd-button-group>\n<hd-space background="transparent" type="row" size="16"></hd-space>\n<form *ngIf="showForm" nz-form [formGroup]="validateHdFormLines"\n class="ant-advanced-search-form hd-formLines-container">\n <nz-table nzTemplateMode [nzFrontPagination]="false" [nzLoading]="tableLoading" [nzScroll]="scroll">\n <thead>\n <tr>\n <th nzWidth="58px" nzLeft="0px">序号</th>\n <ng-container *ngFor="let item of formLines">\n <th *ngIf="!item.hide" [nzAlign]="item.align ? item.align : \'left\'">\n <span *ngIf="item.require" style="color: red;">*</span>{{item.label}}\n </th>\n </ng-container>\n <th style="width: 80px" nzRight="0">操作</th>\n </tr>\n </thead>\n <tbody>\n <ng-container\n *ngFor="let line of linesFormArray.controls.slice((paginationPageIndex - 1) * paginationPageSize, (paginationPageIndex - 1) * paginationPageSize + paginationPageSize);index as dataIndex"\n formArrayName="lines">\n <tr [formGroup]="line">\n <td nzWidth="58px" nzLeft="0px">\n {{line.get(\'lineIndex\').value}}\n </td>\n <ng-container *ngFor="let formItem of formLines">\n <td *ngIf="!formItem.hide" [nzAlign]="formItem.align ? formItem.align : \'left\'">\n <nz-form-item>\n <nz-form-control [nzErrorTip]="formItem.label + \'不能为空\'">\n <ng-container [ngSwitch]="formItem.type">\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input [ngStyle]="getStyle(line, formItem, \'100px\')" nz-input\n [ngStyle]="{\'color\': formItem?.colorOption?.name ? line.get(formItem.colorOption.name ).value : null}"\n [id]="\'input-\' + formItem.name + line.get(\'lineIndex\').value"\n (click)="formItem.isSelect ? selectValue(\'#input-\' + formItem.name + line.get(\'lineIndex\').value) : null"\n [maxlength]="formItem.maxLength || null"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [formControlName]="formItem.name" />\n </nz-input-group>\n <ng-template #inputCleanTemplate>\n <i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill" nzType="close-circle"\n *ngIf="line.get(formItem.name).value && !line.get(formItem.name).disabled"\n (click)="inputClean(formItem ,line)"></i>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select nzShowSearch [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzAllowClear\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event, line)"\n [ngStyle]="getStyle(line, formItem, \'200px\')">\n <nz-option\n *ngFor="let selectItem of (formItem.selectOption.selectList || line.get(formItem.selectOption.selectListName).value)"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]">\n </nz-option>\n <nz-option\n *ngIf="formItem.selectOption.label && line.get(formItem.name) && line.get(formItem.selectOption.label)?.value && line.get(formItem.selectOption.value)?.value"\n [nzLabel]="(formItem.selectOption.value === \'code\' || formItem.selectOption.value === \'productCode\' || formItem.selectOption.hdShowItemCode) ? (\'[\'+ line.get(formItem.selectOption.value).value + \']\' + line.get(formItem.selectOption.label).value) : line.get(formItem.selectOption.label).value"\n [nzValue]="line.get(formItem.selectOption.value).value" nzHide></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="formItem.showTime"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" [nzDisabledDate]="formItem.hdDisabledDate" nzShowTime\n nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n <nz-date-picker *ngIf="!formItem.showTime"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" [nzDisabledDate]="formItem.hdDisabledDate">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="formItem.name">\n </nz-range-picker>\n </ng-container>\n <ng-container *ngSwitchCase="4">\n <textarea\n [ngStyle]="{\'color\': formItem?.colorOption?.name ? line.get(formItem.colorOption.name).value : null}"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [maxlength]="formItem.maxLength || null" rows="4" nz-input\n [maxlength]="formItem.maxLength || null" [formControlName]="formItem.name"></textarea>\n </ng-container>\n <ng-container *ngSwitchCase="5">\n <div style="display: flex;align-items: center;">\n <nz-input-number [ngStyle]="getStyle(line, formItem, \'100px\')"\n [maxlength]="formItem.maxLength || null" [formControlName]="formItem.name"\n [nzMin]="formItem?.inputNumber?.min || 0" [nzMax]="formItem?.inputNumber?.max || 99999999"\n [nzStep]="formItem?.inputNumber?.step || 1"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [nzId]="\'inputNumber-\' + formItem.name + line.get(\'lineIndex\').value"\n (click)="formItem.isSelect ? selectValue(\'#inputNumber-\' + formItem.name + line.get(\'lineIndex\').value) : null">\n </nz-input-number>\n <div *ngIf="formItem?.explainOptionRight?.show"\n [style.color]="formItem?.explainOptionRight?.color ? formItem.explainOptionRight.color : null">\n &nbsp;&nbsp;{{line.get(formItem.explainOptionRight.name).value}}</div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase="6">\n <nz-select nzMode="multiple" [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzShowSearch nzAllowClear\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" [ngStyle]="getStyle(line, formItem, \'200px\')"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event, line)">\n <nz-option *ngFor="let selectItem of formItem.selectOption.selectList"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]"></nz-option>\n <ng-container\n *ngIf="formItem.selectOption.label && line.get(formItem.name) && line.get(formItem.selectOption.label)?.value && line.get(formItem.selectOption.value)?.value">\n <nz-option *ngFor="let option of line.get(formItem.selectOption.value).value;index as i"\n [nzLabel]="line.get(formItem.selectOption.label).value[i]" [nzValue]="option" nzHide>\n </nz-option>\n </ng-container>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="7">\n {{(formItem.preserveNumber && line.get(formItem.name).value) ?\n LodashRound(line.get(formItem.name).value,formItem.preserveNumber).toFixed(formItem.preserveNumber)\n : line.get(formItem.name).value}}\n </ng-container>\n <ng-container *ngSwitchCase="8">\n <nz-switch [formControlName]="formItem.name"></nz-switch>\n </ng-container>\n <ng-container *ngSwitchCase="9">\n <nz-time-picker [formControlName]="formItem.name"></nz-time-picker>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n <div *ngIf="formItem?.explainOption?.show"\n [style.color]="formItem?.explainOption?.color ? formItem.explainOption.color : null">\n {{line.get(formItem.explainOption.name).value}}</div>\n </td>\n </ng-container>\n <td style="width: 80px" nzRight="0">\n <span class="common-btn-group">\n <a *ngIf="operateButtons.includes(\'add\')" (click)="addFormLine(line.get(\'lineIndex\').value)">添加</a>\n <a class="common-danger-btn" *ngIf="operateButtons.includes(\'delete\') && !showDeleteConfirm"\n (click)="deleteFormLine(line.get(\'lineIndex\').value)">删除</a>\n <a class="common-danger-btn" *ngIf="operateButtons.includes(\'delete\') && showDeleteConfirm" nz-popconfirm\n nzPopconfirmTitle="确认要删除该行吗?" nzPopconfirmPlacement="bottom"\n (nzOnConfirm)="deleteFormLine(line.get(\'lineIndex\').value)">删除</a>\n </span>\n </td>\n </tr>\n </ng-container>\n \x3c!-- 合计区域 --\x3e\n <tr *ngIf="showTotal" class="hd-table-total">\n <td>合计</td>\n <ng-container *ngFor="let totalOption of totalOptionList">\n <td [nzAlign]="totalOption.align ? totalOption.align : \'left\'">{{ (totalOption.value || totalOption.value ===\n 0) ? (((totalOption.value % 1 === 0) && !totalOption.showDecimal ) ? totalOption.value :\n LodashRound(totalOption.value,2).toFixed(2)) : \'\' }} </td>\n </ng-container>\n </tr>\n </tbody>\n </nz-table>\n <nz-list\n *ngIf="linesFormArray.controls.slice((paginationPageIndex - 1) * paginationPageSize, (paginationPageIndex - 1) * paginationPageSize + paginationPageSize).length === 0"\n [nzDataSource]="[]"></nz-list>\n <ng-container>\n <hd-space background="transparent" type="row" size="16"></hd-space>\n <nz-pagination [nzSize]="\'small\'" style="text-align: right;" [nzPageIndex]="paginationPageIndex"\n [nzPageSize]="paginationPageSize" [nzPageSizeOptions]="[10, 20, 30, 40, 50]"\n [nzTotal]="linesFormArray.controls.length" nzShowSizeChanger (nzPageIndexChange)="pageIndexChange($event)"\n (nzPageSizeChange)="pageSizeChange($event)" [nzShowTotal]="totalTemplate"></nz-pagination>\n <ng-template #totalTemplate let-total>共 {{linesFormArray.controls.length}} 条数据</ng-template>\n </ng-container>\n</form>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-formLines-container ::ng-deep td{padding:1.5px 8px!important}.hd-formLines-container .ant-table-tbody>tr>td,.hd-formLines-container ::ng-deep .ant-table-thead>tr>th{padding:16px 8px}.hd-formLines-container ::ng-deep .hd-table-total>td{border:0!important}.hd-formLines-container .ant-input-number{width:100%}"]}]}],e.ctorParameters=function(){return[{type:o.FormBuilder},{type:t.NgZone}]},e.propDecorators={tableLoading:[{type:t.Input}],showSearch:[{type:t.Input}],formLines:[{type:t.Input}],formLinesData:[{type:t.Input}],operateButtons:[{type:t.Input}],scroll:[{type:t.Input}],changeEvent:[{type:t.Output}],showDeleteConfirm:[{type:t.Input}],showTotal:[{type:t.Input}],totalOption:[{type:t.Input}],columnsNumber:[{type:t.Input}]},z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"tableLoading",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSearch",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"showDeleteConfirm",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTotal",void 0),e}();var Q=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F,G,S],declarations:[Z],exports:[Z]}]}],e}(),U=function(){function e(e){this.fb=e,this.changeEvent=new t.EventEmitter}return e.prototype.ngOnInit=function(){this.init()},e.prototype.ngOnChanges=function(e){this.dealRow()},e.prototype.triggerEvent=function(e,t){e&&e(t)},e.prototype.init=function(){var e=this;if(!this.checkList(this.formList))throw"form组件数据格式不规范";this.dealRow();var t={};this.formList.forEach((function(n,i){if(2===n.type&&n.value){var a=w(n.value.toString().split("-").map((function(e){return parseInt(e)})),3),r=a[0],l=a[1],p=a[2],s=new Date(r,l-1,p).toLocaleDateString("zh-Hans-CN",{year:"numeric",month:"2-digit",day:"2-digit"}).replace(/\//g,"-");t[n.name]=e.fb.control({value:new Date(s),disabled:n.disabled},n.require&&!n.hide?[o.Validators.required]:[])}else if(3===n.type&&n.value){var d=JSON.parse(JSON.stringify(n.value));if(!(d&&d instanceof Array))throw"form组件中DateRange控件value值格式不规范,正确示例['2020-01-22', '2020-01-23']";d=d.map((function(e){var t=w(e.split("-").map((function(e){return parseInt(e)})),3),n=t[0],o=t[1],i=t[2],a=new Date(n,o-1,i).toLocaleDateString("zh-Hans-CN",{year:"numeric",month:"2-digit",day:"2-digit"}).replace(/\//g,"-");e=new Date(a)})),t[n.name]=e.fb.control({value:d,disabled:n.disabled},n.require&&!n.hide?[o.Validators.required]:[])}else t[n.name]=e.fb.control({value:n.value,disabled:n.disabled},n.require&&!n.hide?[o.Validators.required]:[])})),this.validateHdForm=this.fb.group(t),this.formList.forEach((function(t){t.onChangeEvent&&t.onChangeEvent&&e.validateHdForm.get(t.name).valueChanges.subscribe((function(n){return e.triggerEvent(t.onChangeEvent,n)}))})),this.validateHdForm.valueChanges.subscribe((function(t){return e.onHdFormValueChanged(t)})),this.onHdFormValueChanged()},e.prototype.dealRow=function(){for(var e=this.formList.length,t=0,n=0;n<e;n++)if(!this.formList[n].hide)if(0===n)this.formList[n].totalWidth=this.formList[n].width||1,this.formList[n].isRowFirst=1,t+=4;else for(var o=n-1;o>=0;o--)if(this.formList[o].totalWidth){this.formList[n].totalWidth=this.formList[o].totalWidth+(this.formList[n].width||1),this.formList[o].totalWidth+this.formList[n].width>t&&this.formList[o].totalWidth<=t?(t+=4,this.formList[n].isRowFirst=1):this.formList[n].isRowFirst=0;break}for(var i=0;i<e;i++)if(1===this.formList[i].isRowFirst){this.formList[i].columnItems=[];for(var a=0,r=1;r<e-i&&(4!==a&&1!==this.formList[i+r].isRowFirst);r++)!this.formList[i+r].hide&&this.formList[i+r]&&0===this.formList[i+r].isRowFirst&&(this.formList[i].columnItems.push(this.formList[i+r]),a++)}},e.prototype.onHdFormValueChanged=function(e){this.changeEvent.emit(this.validateHdForm)},e.prototype.checkList=function(e){if(!e||e&&0===e.length)return!1;var t=[];if(e.forEach((function(e){t.push(e.name)})),y(new Set(t)).length!==e.length)throw"form组件数据格式不规范,存在重复name值!";return!0},e.prototype.submitForm=function(){Object.values(this.validateHdForm.controls).forEach((function(e){e.markAsDirty(),e.updateValueAndValidity()})),this.changeEvent.emit(this.validateHdForm.getRawValue())},e.prototype.resetForm=function(){this.validateHdForm.reset(),Object.values(this.validateHdForm.controls).forEach((function(e){e.markAsDirty(),e.updateValueAndValidity()})),this.changeEvent.emit(this.validateHdForm.getRawValue())},e.prototype.inputClean=function(e){var t={};t[e.name]=null,this.validateHdForm.patchValue(t)},e.decorators=[{type:t.Component,args:[{selector:"hd-form",template:'<form nz-form [formGroup]="validateHdForm" class="ant-advanced-search-form hd-formItem-container">\n \x3c!-- 整体结构 --\x3e\n <div nz-row [nzGutter]="24">\n \x3c!-- 对组件列表循环处理 --\x3e\n <ng-container *ngFor="let formItem of formList;index as i">\n <div nz-row *ngIf="formItem.isRowFirst && formItem.isRowFirst === 1">\n <div nz-col *ngIf="!formItem.hide" [nzSpan]="formItem.width? formItem.width * 6 : 6">\n <nz-form-item nzFlex>\n <nz-form-label class="hd-formItem-label" [nzNoColon]="true">\n <div class="hd-formItem-label-flex">\n <span>\n <span class="hd-formItem-label-require" *ngIf="formItem.require">*</span>\n <span\n [ngStyle]="{\'color\': formItem?.labelColor ? formItem.labelColor : null}">{{formItem.label}}</span>\n </span>\n <ng-container *ngIf="formItem.explain">\n <span class="hd-formItem-label-explain">{{formItem.explain}}</span>\n </ng-container>\n </div>\n </nz-form-label>\n <nz-form-control class="hd-formItem-control" [nzErrorTip]="formItem.label + \'不能为空\'">\n <ng-container [ngSwitch]="formItem.type">\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input nz-input [ngStyle]="{\'color\': formItem?.color ? formItem.color : null}"\n [maxlength]="formItem.maxLength || null"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [formControlName]="formItem.name" />\n </nz-input-group>\n <ng-template #inputCleanTemplate><i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill"\n nzType="close-circle" *ngIf="validateHdForm.get(formItem.name).value && !formItem.disabled"\n (click)="inputClean(formItem)"></i></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select nzShowSearch [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzAllowClear [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of formItem.selectOption.selectList"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]"></nz-option>\n <nz-option *ngIf="formItem.defaultLabel" [nzLabel]="formItem.defaultLabel"\n [nzValue]="formItem.value" nzHide></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="!formItem.showTime" [nzDisabledDate]="formItem.hdDisabledDate"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name">\n </nz-date-picker>\n <nz-date-picker *ngIf="formItem.showTime" [nzDisabledDate]="formItem.hdDisabledDate"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" nzShowTime nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="formItem.name">\n </nz-range-picker>\n </ng-container>\n <ng-container *ngSwitchCase="4">\n <textarea [ngStyle]="{\'color\': formItem?.color ? formItem.color : null}"\n [rows]="formItem.textAreaRows ? formItem.textAreaRows : 1"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label" rows="1"\n nz-input [maxlength]="formItem.maxLength || null" [formControlName]="formItem.name"></textarea>\n </ng-container>\n <ng-container *ngSwitchCase="5">\n <nz-input-number [ngStyle]="{\'color\': formItem?.color ? formItem.color : null}"\n [formControlName]="formItem.name" [nzMin]="formItem?.inputNumber?.min || 0"\n [nzMax]="formItem?.inputNumber?.max || 99999999" [nzStep]="formItem?.inputNumber?.step || 1"\n [nzPlaceHolder]="\'请输入\' + formItem.label"></nz-input-number>\n </ng-container>\n \x3c!-- 多项选择器 --\x3e\n <ng-container *ngSwitchCase="6">\n <nz-select [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzMode="multiple" nzShowSearch nzAllowClear\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of formItem.selectOption.selectList"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]"></nz-option>\n <ng-container *ngIf="formItem.defaultLabel">\n <nz-option *ngFor="let option of formItem.defaultLabel;index as i" [nzLabel]="option"\n [nzValue]="formItem.value[i]" nzHide></nz-option>\n </ng-container>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="7">\n <span>{{formItem.value || validateHdForm.get(formItem.name).value}}</span>\n </ng-container>\n <ng-container *ngSwitchCase="8">\n <nz-switch [formControlName]="formItem.name"></nz-switch>\n </ng-container>\n <ng-container *ngSwitchCase="9">\n <nz-time-picker [formControlName]="formItem.name"></nz-time-picker>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n </div>\n \x3c!-- 循环最多四次 --\x3e\n <ng-container *ngFor="let columnItem of formItem.columnItems;index as columnItemIndex">\n <div nz-col *ngIf="!columnItem.hide" [nzSpan]="columnItem.width? columnItem.width * 6 : 6">\n <nz-form-item nzFlex>\n <nz-form-label class="hd-formItem-label" [nzNoColon]="true">\n <div class="hd-formItem-label-flex">\n <span>\n <span class="hd-formItem-label-require" *ngIf="columnItem.require">*</span>\n <span\n [ngStyle]="{\'color\': columnItem?.labelColor ? columnItem.labelColor : null}">{{columnItem.label}}</span>\n </span>\n <ng-container *ngIf="columnItem.explain">\n <span class="hd-formItem-label-explain">{{columnItem.explain}}</span>\n </ng-container>\n </div>\n </nz-form-label>\n <nz-form-control class="hd-formItem-control" [nzErrorTip]="columnItem.label + \'不能为空\'">\n <ng-container [ngSwitch]="columnItem.type">\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input *ngIf="columnItem.disabled === true;else inputTemplate" nz-input\n [ngStyle]="{\'color\': columnItem?.color ? columnItem.color : null}" [disabled]="true"\n [attr.disabled]="true" [maxlength]="columnItem.maxLength || null"\n [placeholder]="columnItem.placeholder ? columnItem.placeholder : \'请输入\' + columnItem.label"\n [formControlName]="columnItem.name" />\n <ng-template #inputTemplate>\n <input nz-input [ngStyle]="{\'color\': columnItem?.color ? formItem.color : null}"\n [maxlength]="columnItem.maxLength || null"\n [placeholder]="columnItem.placeholder ? columnItem.placeholder : \'请输入\' + columnItem.label"\n [formControlName]="columnItem.name" />\n </ng-template>\n </nz-input-group>\n <ng-template #inputCleanTemplate><i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill"\n nzType="close-circle" *ngIf="validateHdForm.get(columnItem.name).value && !columnItem.disabled"\n (click)="inputClean(columnItem)"></i></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select [nzServerSearch]="columnItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="columnItem.selectOption.hdDropdownMatchSelectWidth ? columnItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzShowSearch nzAllowClear\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name"\n (nzOnSearch)="triggerEvent(columnItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of columnItem.selectOption.selectList"\n [nzValue]="selectItem[columnItem.selectOption.value]" [nzLabel]="columnItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[columnItem.selectOption.value] +\']\' +\n selectItem[columnItem.selectOption.label] : selectItem[columnItem.selectOption.label]">\n </nz-option>\n <nz-option *ngIf="columnItem.defaultLabel" [nzLabel]="columnItem.defaultLabel"\n [nzValue]="columnItem.value" nzHide></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="columnItem.showTime" [nzDisabledDate]="columnItem.hdDisabledDate"\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name" nzShowTime nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n <nz-date-picker *ngIf="!columnItem.showTime" [nzDisabledDate]="columnItem.hdDisabledDate"\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="columnItem.name">\n </nz-range-picker>\n </ng-container>\n <ng-container *ngSwitchCase="4">\n <textarea [ngStyle]="{\'color\': columnItem?.color ? columnItem.color : null}"\n [rows]="columnItem.textAreaRows ? columnItem.textAreaRows : 1" rows="1" nz-input\n [maxlength]="columnItem.maxLength || null" [formControlName]="columnItem.name"></textarea>\n </ng-container>\n <ng-container *ngSwitchCase="5">\n <nz-input-number [ngStyle]="{\'color\': columnItem?.color ? columnItem.color : null}"\n [formControlName]="columnItem.name" [nzMin]="columnItem?.inputNumber?.min || 0"\n [nzMax]="columnItem?.inputNumber?.max || 99999999" [nzStep]="columnItem?.inputNumber?.step || 1"\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请输入\' + columnItem.label">\n </nz-input-number>\n </ng-container>\n \x3c!-- 多项选择器 --\x3e\n <ng-container *ngSwitchCase="6">\n <nz-select [nzServerSearch]="columnItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="columnItem.selectOption.hdDropdownMatchSelectWidth ? columnItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzMode="multiple" nzShowSearch nzAllowClear\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name"\n (nzOnSearch)="triggerEvent(columnItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of columnItem.selectOption.selectList"\n [nzValue]="selectItem[columnItem.selectOption.value]" [nzLabel]="columnItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[columnItem.selectOption.value] +\']\' +\n selectItem[columnItem.selectOption.label] : selectItem[columnItem.selectOption.label]">\n </nz-option>\n <ng-container *ngIf="columnItem.defaultLabel">\n <nz-option *ngFor="let option of columnItem.defaultLabel;index as i" [nzLabel]="option"\n [nzValue]="columnItem.value[i]" nzHide></nz-option>\n </ng-container>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="7">\n <span>{{columnItem.value || validateHdForm.get(columnItem.name).value}}</span>\n </ng-container>\n <ng-container *ngSwitchCase="8">\n <nz-switch [formControlName]="columnItem.name"></nz-switch>\n </ng-container>\n <ng-container *ngSwitchCase="9">\n <nz-time-picker [formControlName]="columnItem.name"></nz-time-picker>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n</form>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-formItem-container .hd-formItem-label{width:108px;word-break:break-all;text-align:right}.hd-formItem-container .hd-formItem-control{width:calc(100% - 108px)}.hd-formItem-container .ant-input-number{width:100%}.hd-formItem-container .hd-formItem-label-flex{display:inline-flex;flex-direction:column}.hd-formItem-container .hd-formItem-label-flex span{display:inline-block}.hd-formItem-container .hd-formItem-label-flex .hd-formItem-label-require{margin-right:4px;color:#f5222d;font-size:12px;font-family:SimSun,sans-serif}.hd-formItem-container .hd-formItem-label-flex .hd-formItem-label-explain{margin-top:-13px;color:#f5222d}.hd-formItem-container textarea{margin-top:8px}"]}]}],e.ctorParameters=function(){return[{type:o.FormBuilder}]},e.propDecorators={formList:[{type:t.Input}],changeEvent:[{type:t.Output}]},e}();var K=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F],declarations:[U],exports:[U]}]}],e}(),X=function(){function e(){this.scroll={x:"1px"},this.showSelected=!1,this.selectField="billNumber",this.showTableTotal=!1,this.selectEvent=new t.EventEmitter,this.tableSearchEvent=new t.EventEmitter,this.tableLoading=!1,this.tablePageIndex=1,this.tablePageSize=10,this.tablePageIndexChange=new t.EventEmitter,this.tablePageSizeChange=new t.EventEmitter,this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.listOfDisplayData=[],this.listOfAllData=[],this.mapOfCheckedId={},this.mapOfCheckList={},this.tableTotalOptionList=[]}return e.prototype.ngOnInit=function(){},e.prototype.ngOnChanges=function(e){if(e&&e.tableData&&e.tableData.currentValue&&e.tableData.previousValue){if(e.tableData.currentValue.pageSize!==e.tableData.previousValue.pageSize||e.tableData.currentValue.pageNumber!==e.tableData.previousValue.pageNumber)return;this.resetStatus()}},e.prototype.currentPageDataChange=function(e){this.listOfDisplayData=e,this.refreshStatus(),this.resetStatus()},e.prototype.search=function(e){e?this.tablePageSizeChange.emit(this.tablePageSize):this.tablePageIndexChange.emit(this.tablePageIndex),this.tableSearchEvent.emit(e)},e.prototype.resetStatus=function(){this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.mapOfCheckedId={},this.mapOfCheckList={},this.selectEvent.emit([])},e.prototype.refreshStatus=function(e,t){var n=this;if(void 0===e&&(e=!1),void 0===t&&(t=null),e&&t?!this.mapOfCheckList[t[this.selectField]]&&(this.mapOfCheckList[t[this.selectField]]=t):!e&&t&&this.mapOfCheckList[t[this.selectField]]&&delete this.mapOfCheckList[t[this.selectField]],this.isAllDisplayDataChecked=this.listOfDisplayData.every((function(e){return n.mapOfCheckedId[e[n.selectField]]})),this.isIndeterminate=this.listOfDisplayData.some((function(e){return n.mapOfCheckedId[e[n.selectField]]}))&&!this.isAllDisplayDataChecked,this.selectEvent){var o=Object.values(this.mapOfCheckList);this.selectEvent.emit(o)}0===this.tableData.content.length&&(this.isAllDisplayDataChecked=!1)},e.prototype.checkAll=function(e){var t=this;this.listOfDisplayData.forEach((function(n){e?!t.mapOfCheckList[n[t.selectField]]&&(t.mapOfCheckList[n[t.selectField]]=n):t.mapOfCheckList[n[t.selectField]]&&delete t.mapOfCheckList[n[t.selectField]],t.mapOfCheckedId[n[t.selectField]]=e})),this.refreshStatus()},e.decorators=[{type:t.Component,args:[{selector:"hd-current-table",template:'<ng-container>\n <ng-container *ngTemplateOutlet="tableTotal"></ng-container>\n <hd-space *ngIf="tableTotal" type="row" size="12"></hd-space>\n <nz-table #hdTable class="hd-table-container" [nzScroll]="scroll" nzShowSizeChanger nzShowSizeChanger nzShowQuickJumper nzFrontPagination="false" nzSize="middle"\n [nzData]="tableData.content" [nzTotal]="tableData.totalElements" [(nzPageIndex)]="tablePageIndex"\n [nzLoading]="tableLoading" [(nzPageSize)]="tablePageSize" (nzPageSizeChange)="search(true)"\n (nzPageIndexChange)="search(false)" (nzCurrentPageDataChange)="showSelected ? currentPageDataChange($event) : null"\n [nzShowTotal]="tableTotalTemplate">\n <thead>\n <tr>\n <th nzWidth="40px" nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="isAllDisplayDataChecked" [nzIndeterminate]="isIndeterminate"\n (nzCheckedChange)="checkAll($event)"></th>\n <ng-container *ngTemplateOutlet="tableHead"></ng-container>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor="let data of hdTable.data;index as i">\n <td nzWidth="40px" nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="mapOfCheckedId[data[selectField]]" (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngTemplateOutlet="tableBody;context:{$implicit: data, index: i}"></ng-container>\n </tr>\n \x3c!-- 合计所有数据区域 需要后端接口配合 --\x3e\n <tr *ngIf="showTableTotal" class="hd-table-total">\n <td>合计</td>\n <ng-container *ngFor="let tableTotalOption of tableTotalOptionList">\n <td>{{ tableTotalOption }}</td>\n </ng-container>\n </tr>\n </tbody>\n <ng-template #tableTotalTemplate>\n 共 {{tableData.totalElements}} 条数据\n </ng-template>\n </nz-table>\n</ng-container>\n',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-table-container ::ng-deep .ant-pagination-options-quick-jumper input{border-radius:2px;border:1px solid #d9d9d9}.hd-table-container ::ng-deep .ant-pagination-options .ant-select-selection{border-radius:2px}.hd-table-container ::ng-deep .ant-table-thead>tr>th{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .ant-table-tbody>tr>td{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .hd-table-total>td{border:0!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={tableData:[{type:t.Input}],scroll:[{type:t.Input}],showSelected:[{type:t.Input}],selectField:[{type:t.Input}],showTableTotal:[{type:t.Input}],tableTotalOption:[{type:t.Input}],selectEvent:[{type:t.Output}],tableSearchEvent:[{type:t.Output}],tableHead:[{type:t.ContentChild,args:["tableHead",{static:!1}]}],tableBody:[{type:t.ContentChild,args:["tableBody",{static:!1}]}],tableTotal:[{type:t.ContentChild,args:["tableTotal",{static:!1}]}],tableLoading:[{type:t.Input}],tablePageIndex:[{type:t.Input}],tablePageSize:[{type:t.Input}],tablePageIndexChange:[{type:t.Output}],tablePageSizeChange:[{type:t.Output}]},z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSelected",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTableTotal",void 0),e}();var Y=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,p.NzTableModule,G],declarations:[X],exports:[X],schemas:[t.NO_ERRORS_SCHEMA]}]}],e}(),ee=function(){function e(){}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-log",template:'<hd-detail-lines [scroll]="{x: \'1px\'}" [lines]="logs" hdFrontPagination="true">\n <ng-template #detailLineHead>\n <th>时间</th>\n <th>操作人</th>\n <th>事件</th>\n <th>描述</th>\n </ng-template>\n <ng-template #detailLineBody let-data let-index="index">\n <td>{{data.createInfo.operateTime}}</td>\n <td>{{data.createInfo.operatorName}}</td>\n <td>{{data.event}}</td>\n <td>{{data.describe}}</td>\n </ng-template>\n</hd-detail-lines>',styles:[""]}]}],e.ctorParameters=function(){return[]},e.propDecorators={logs:[{type:t.Input}]},e}();var te=function(){function e(e){this.modalService=e}return e.prototype.showLogs=function(e){this.modalService.create({nzTitle:"操作日志",nzContent:ee,nzComponentParams:{logs:e},nzFooter:null,nzWidth:800})},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:i.NzModalService}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(s.NzModalService))},token:e,providedIn:"root"}),e}();var ne=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,i.NgZorroAntdModule,H],entryComponents:[ee],declarations:[ee],exports:[ee],providers:[te]}]}],e}(),oe=function(){function e(){this.confirmOption=new t.EventEmitter,this.cancelOption=new t.EventEmitter}return e.prototype.ngOnInit=function(){},e.prototype.cancel=function(e){this.cancelOption.emit()},e.prototype.confirm=function(e){this.confirmOption.emit()},e.decorators=[{type:t.Component,args:[{selector:"hd-popconfirm",template:'<div class="popconfirm-content">\n <div class="popconfirm-arrow"></div>\n\n <div class="popconfirm-inner">\n <div class="message-content">\n <svg class="icon-warn" viewBox="64 64 896 896" fill="currentColor" width="1em" height="1em" data-icon="exclamation-circle" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z"></path></svg>\n <p style="text-indent: 18px">{{message}}</p>\n </div>\n\n \x3c!-- 按钮提示 --\x3e\n <div class="btn-content">\n <button type="button" (click)="cancel($event)" nz-button nzType="default">取消</button>\n <button type="button" (click)="confirm($event)" nz-button nzType="primary">确认</button>\n </div>\n </div>\n</div>\n',styles:[".popconfirm-content{position:relative}.popconfirm-arrow{position:absolute;top:15px;left:-4px;display:block;width:8.5px;height:8.5px;background:0 0;border-style:solid;border-width:4.24264069px;transform:rotate(45deg);right:6px;box-shadow:-3px 3px 7px rgba(0,0,0,.07);border-color:transparent transparent #fff #fff}.popconfirm-inner{min-width:158px;background-color:#fff;padding:12px 16px;box-sizing:border-box;line-height:1.5;box-shadow:0 2px 8px rgba(0,0,0,.15);border-radius:4px;text-align:left}.message-content{position:relative}.icon-warn{color:#faad14;position:absolute;top:4px;font-size:14px}.btn-content{width:100%;text-align:right}:host ::ng-deep .btn-content>button{padding:0 7px!important;margin-left:8px!important;font-size:14px!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={message:[{type:t.Input}],confirmOption:[{type:t.Output}],cancelOption:[{type:t.Output}]},e}();var ie=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[oe],imports:[o.FormsModule,o.ReactiveFormsModule,n.CommonModule,i.NgZorroAntdModule],exports:[oe],providers:[],bootstrap:[oe]}]}],e}(),ae=function(){function e(){}return e.prototype.ngOnInit=function(){this.setStatusColor()},e.prototype.ngOnChanges=function(){this.setStatusColor()},e.prototype.setStatusColor=function(){for(var e in R)if(-1!==R[e].indexOf(this.status)){this.statusColor=e;break}},e.decorators=[{type:t.Component,args:[{selector:"hd-status",template:'<ng-container>\n <div class="hd-status">\n <div class="hd-status-dot" [ngStyle]="{\'background\': statusColor || \'#9FA4A2\'}"></div>\n <div class="hd-status-text">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-container>\n',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-status{display:flex;justify-content:flex-start;align-items:center}.hd-status-dot{width:6px;height:6px;border-radius:50%;margin-right:6px}.hd-status-text{color:#2a3634;font-size:12px}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={status:[{type:t.Input}]},e}();var re=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[ae],imports:[o.FormsModule,o.ReactiveFormsModule,n.CommonModule,i.NgZorroAntdModule],exports:[ae],providers:[],bootstrap:[ae]}]}],e}(),le=function(){function e(){}return e.prototype.putSession=function(e,t){t?window.sessionStorage.setItem(e,JSON.stringify(t)):window.sessionStorage.removeItem(e)},e.prototype.getSession=function(e){return JSON.parse(window.sessionStorage.getItem(e))},e.prototype.removeSession=function(e){window.sessionStorage.removeItem(e)},e.decorators=[{type:t.Injectable}],e}(),pe={billNumberColWidth:150,nameColWidth:150,codeColWidth:100,codeNameColWidth:200,enumColWidth:100,dateColWidth:100,dateTimeColWidth:150,dateRangeWidth:200,operateColWidth:150,numberColWidth:100,remarkColwidth:250,fixColWidth:150};var se=function(){};var de=function(){this.title="",this.key="",this.disabled=!1,this.checked=!1,this.selectable=!1,this.isLeaf=!0,this.expanded=!1};var ce=function(){function e(e){var n=this;this.commonSessionService=e,this.tableCols=[],this.showSelected=!1,this.selectField="billNumber",this.showTableTotal=!1,this.selectEvent=new t.EventEmitter,this.tableSearchEvent=new t.EventEmitter,this.tableLoading=!1,this.tablePageIndex=1,this.tablePageIndexChange=new t.EventEmitter,this.tablePageSizeChange=new t.EventEmitter,this.scroll=null,this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.listOfDisplayData=[],this.listOfAllData=[],this.mapOfCheckedId={},this.mapOfCheckList={},this.tableTotalOptionList=[],this.textWidthCache={},this.tableCacheOption=new se,this.tableColsCache=[],this.showTable=!1,this.selectColListNodes=[],this.selectColListNodesCache=[],this.showListNodes=!1,this.isDropdownVisible=!1,this.nowListNodes=[],this.hideListNodes=[],this.cancelNowListNodes=[],this.cancelHideListNodes=[],this.beforeDrop=function(e){if(e.node.origin.disabled||!e.dragNode.origin.checked)return f.of(!1);var t=new de;t.checked=e.dragNode.origin.checked,t.disabled=e.dragNode.origin.disabled,t.expanded=e.dragNode.origin.expanded,t.isLeaf=e.dragNode.origin.isLeaf,t.key=e.dragNode.origin.key,t.selectable=e.dragNode.origin.selectable,t.title=e.dragNode.origin.title;var o=n.nowListNodes.findIndex((function(t){return t.title==e.dragNode.origin.title})),i=n.nowListNodes.findIndex((function(t){return t.title==e.node.origin.title}))+(-1===e.pos?0:e.pos);return n.nowListNodes.splice(i,0,t),n.nowListNodes.splice(i>=o?o:o+1,1),f.of(!0).pipe(b.delay(100))}}return e.prototype.ngOnInit=function(){this.userSession=this.commonSessionService.getSession("__jy_authorization_session__"),this.userSession||(this.userSession={userCode:"dev"}),this.getInitLocalforage()},e.prototype.getInitLocalforage=function(){var e=this;u.getItem("hd-table_"+this.userSession.userCode+"_"+this.uuid).then((function(t){e.tableCacheOption=t,e.tableCacheOption.pageSize&&e.tableCacheOption.pageSize>10?(e.tablePageSize=e.tableCacheOption.pageSize,e.tablePageSizeChange.emit(e.tablePageSize)):e.tablePageSize=e.tableCacheOption.pageSize||10,e.tableCacheOption.colWidths||(e.tableCacheOption.colWidths=new Map),e.initTable()})).catch((function(t){e.tableCacheOption=new se,e.tablePageSize=10,e.tableCacheOption.pageSize=10,e.tableCacheOption.colWidths=new Map,e.initTable()}))},e.prototype.initTable=function(){if(this.showTable=!1,!this.uuid)throw"hd-table缺失uuid参数,请使用编辑器插件生成并给hd-table赋予uuid属性";this.judgeRepeatCols()&&(this.dealCols(),this.setCols(),this.dealScroll(),this.dealOperateBtn(),this.showTable=!0)},e.prototype.cancelDropdown=function(){this.isDropdownVisible=!1,this.hideListNodes=JSON.parse(JSON.stringify(this.cancelHideListNodes)),this.nowListNodes=JSON.parse(JSON.stringify(this.cancelNowListNodes))},e.prototype.confirmDropdown=function(){this.cancelHideListNodes=JSON.parse(JSON.stringify(this.hideListNodes)),this.cancelNowListNodes=JSON.parse(JSON.stringify(this.nowListNodes)),this.isDropdownVisible=!0},e.prototype.submitGrids=function(){var e=this;this.tableCacheOption.cols=[],this.nowListNodes.forEach((function(t){e.tableCacheOption.cols.push(t.title)})),this.saveTableCacheOption(),this.initTable(),this.isDropdownVisible=!1},e.prototype.setCols=function(){var e=this;if(this.showListNodes=!1,this.nowListNodes=[],this.hideListNodes=[],this.tableCacheOption.cols){var t=this.tableColsCache.reduce((function(t,n){return e.tableCacheOption.cols.includes(n.title)?t.incols.push(n):t.notIncols.push(n),t}),{notIncols:[],incols:[]}),n=t.notIncols,o=t.incols;o.sort((function(t,n){return e.tableCacheOption.cols.indexOf(t.title)-e.tableCacheOption.cols.indexOf(n.title)})),this.tableCols=o.concat(n)}this.tableCols.forEach((function(t,n){e.tableCacheOption.cols?(t.isShow=!!e.tableCacheOption.cols.includes(t.title),t.isShow?e.nowListNodes.push({title:t.title,key:t.title,disabled:!!t.fixed,selectable:!1,checked:!!e.tableCacheOption.cols.includes(t.title)}):e.hideListNodes.push({title:t.title,key:t.title,disabled:!!t.fixed,selectable:!1,checked:!!e.tableCacheOption.cols.includes(t.title)})):(t.isShow=!0,e.nowListNodes.push({title:t.title,key:t.title,checked:!0,selectable:!1,disabled:!!t.fixed}))})),this.tableCacheOption&&this.tableCacheOption.colWidths&&0!==this.tableCacheOption.colWidths.size&&this.tableCols.forEach((function(t){e.tableCacheOption.colWidths.has(t.title)&&(t.width=e.tableCacheOption.colWidths.get(t.title))})),this.dealCols(),setTimeout((function(){e.showListNodes=!0}),0)},e.prototype.moveElementNearby=function(e,t,n,o){var i=JSON.parse(JSON.stringify(e)),a=i.findIndex((function(e){return e.title===n})),r=i.findIndex((function(e){return e.title===t})),l=o<0?a+o:a,p=i.splice(r,1);return i.splice(l+1,0,p[0]),i},e.prototype.checkAction=function(e){if(e.node.origin.checked){var t=new de;(t=this.hideListNodes.find((function(t){return t.title===e.node.origin.title}))).checked=!0;for(var n=null,o=this.tableColsCache.length-1;o>=0;o--)if("right"===this.tableColsCache[o].fixed){n=this.tableColsCache[o].title;break}var i=this.nowListNodes.slice(0);if(n){var a=this.nowListNodes.findIndex((function(e){return e.title===n}));i.splice(a,0,t)}else i.push(t);this.nowListNodes=i,this.hideListNodes=this.hideListNodes.filter((function(t){return t.title!==e.node.origin.title}))}else{if(0===this.hideListNodes.length&&this.tableCacheOption&&this.tableCacheOption.cols)this.hideListNodes=this.getHideListNodes();else{var r=this.hideListNodes.slice(0);this.nowListNodes.forEach((function(t){t.title===e.node.origin.title&&(JSON.parse(JSON.stringify(t)).checked=!0,r.push(t))})),this.hideListNodes=r}this.nowListNodes=this.nowListNodes.filter((function(t){return t.title!==e.node.origin.title}))}},e.prototype.getHideListNodes=function(){var e=this,t=[];return this.tableColsCache.forEach((function(n){if(!e.tableCacheOption.cols.includes(n.title)){var o=new de;o.title=n.title,o.key=n.title,o.disabled=!!n.fixed,o.checked=!1,t.push(o)}})),t},e.prototype.dealCols=function(){var e=this.tableCols.filter((function(e){return"left"===e.fixed})),t=this.tableCols.filter((function(e){return"right"===e.fixed})),n=this.tableCols.filter((function(e){return!e.fixed})),o=e.concat(n).concat(t);this.tableCols=o,this.tableColsCache&&0!==this.tableColsCache.length||(this.tableColsCache=y(this.tableCols))},e.prototype.saveTableCacheOption=function(){u.setItem("hd-table_"+this.userSession.userCode+"_"+this.uuid,this.tableCacheOption)},e.prototype.judgeRepeatCols=function(){for(var e=0;e<this.tableCols.length;e++)for(var t=e+1;t<this.tableCols.length;t++)if(this.tableCols[e].title===this.tableCols[t].title)throw"hd-table组件中列名 "+this.tableCols[e].title+" 重复";return!0},e.prototype.onResize=function(e,t){var n=e.width;this.tableCacheOption.colWidths.set(t,n),this.saveTableCacheOption(),this.tableCols=this.tableCols.map((function(e){return e.title===t?x({},e,{width:n}):e}))},e.prototype.dealOperateBtn=function(){var e=this.tableCols.find((function(e){return"操作"===e.title}))||null;if(e){var t="";e.btnList.forEach((function(e){t+=e.name}));var n=document.createElement("a");n.style.visibility="hidden",n.style.position="absolute",n.style.whiteSpace="nowrap",n.style.fontSize="12px",n.style.display="inline-block",n.innerText=t,document.body.appendChild(n),e.width=n.offsetWidth+4*(e.btnList.length-1)+16,n.style.display="none",document.body.removeChild(n)}},e.prototype.triggerEvent=function(e,t){e&&e(t)},e.prototype.dealScroll=function(){var e=0;this.showSelected&&(e+=40),this.tableCols.forEach((function(t){t.width||(t.width=pe.fixColWidth),t.isShow&&(t.fixedWidth=e,e+=t.width)})),this.scroll={x:"1px",y:"calc(100vh - 140px)"}},e.prototype.isTextOverflow=function(e,t){var n=this.textWidthCache[e];if(void 0!==n)return n+15>=t;var o=document.createElement("span");o.style.visibility="hidden",o.style.position="absolute",o.style.whiteSpace="nowrap",o.style.fontSize="12px",o.style.display="inline-block",o.innerText=e,document.body.appendChild(o);var i=o.offsetWidth+15>=t;return this.textWidthCache[e]=o.offsetWidth,o.style.display="none",document.body.removeChild(o),i},e.prototype.ngOnChanges=function(e){if(e&&e.tableData&&e.tableData.currentValue&&e.tableData.previousValue){if(e.tableData.currentValue.pageSize!==e.tableData.previousValue.pageSize||e.tableData.currentValue.pageNumber!==e.tableData.previousValue.pageNumber)return;this.resetStatus()}},e.prototype.currentPageDataChange=function(e){this.listOfDisplayData=e,this.refreshStatus(),this.resetStatus()},e.prototype.search=function(e){this.tableCacheOption.pageSize=this.tablePageSize,this.saveTableCacheOption(),e?this.tablePageSizeChange.emit(this.tablePageSize):this.tablePageIndexChange.emit(this.tablePageIndex),this.tableSearchEvent.emit(e)},e.prototype.resetStatus=function(){this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.mapOfCheckedId={},this.mapOfCheckList={},this.selectEvent.emit([])},e.prototype.refreshStatus=function(e,t){var n=this;if(void 0===e&&(e=!1),void 0===t&&(t=null),e&&t?!this.mapOfCheckList[t[this.selectField]]&&(this.mapOfCheckList[t[this.selectField]]=t):!e&&t&&this.mapOfCheckList[t[this.selectField]]&&delete this.mapOfCheckList[t[this.selectField]],this.isAllDisplayDataChecked=this.listOfDisplayData.every((function(e){return n.mapOfCheckedId[e[n.selectField]]})),this.isIndeterminate=this.listOfDisplayData.some((function(e){return n.mapOfCheckedId[e[n.selectField]]}))&&!this.isAllDisplayDataChecked,this.selectEvent){var o=Object.values(this.mapOfCheckList);this.selectEvent.emit(o)}0===this.tableData.content.length&&(this.isAllDisplayDataChecked=!1)},e.prototype.checkAll=function(e){var t=this;this.listOfDisplayData.forEach((function(n){e?!t.mapOfCheckList[n[t.selectField]]&&(t.mapOfCheckList[n[t.selectField]]=n):t.mapOfCheckList[n[t.selectField]]&&delete t.mapOfCheckList[n[t.selectField]],t.mapOfCheckedId[n[t.selectField]]=e})),this.refreshStatus()},e.decorators=[{type:t.Component,args:[{selector:"hd-table",template:'<ng-container>\n <hd-button-group>\n <ng-template #buttonGroupLeft>\n <ng-container *ngTemplateOutlet="tableLeftButton"></ng-container>\n </ng-template>\n <ng-template #buttonGroupRight>\n <ng-container *ngTemplateOutlet="tableRightButton"></ng-container>\n <hd-button type="primary" nz-dropdown nzTrigger="click" [nzDropdownMenu]="menu" (clickAction)="confirmDropdown()"\n [nzVisible]="isDropdownVisible">设置列</hd-button>\n <nz-dropdown-menu #menu="nzDropdownMenu">\n <div style="max-height: 400px;overflow-y: scroll;">\n <div nz-menu style="padding: 5px 10px;">\n <nz-tree *ngIf="showListNodes" [nzData]="nowListNodes" nzCheckable nzDraggable nzBlockNode\n nzShowExpand="false" (nzCheckBoxChange)="checkAction($event)" [nzBeforeDrop]="beforeDrop">\n </nz-tree>\n </div>\n <div *ngIf="showListNodes && hideListNodes.length > 0" nz-menu style="padding: 5px 10px;">\n <nz-tree *ngIf="showListNodes" [nzData]="hideListNodes" nzCheckable nzShowExpand="false"\n (nzCheckBoxChange)="checkAction($event)">\n </nz-tree>\n </div>\n </div>\n <div style="text-align: right;background: #fff;padding: 4px;">\n <hd-button style="margin-right: 4px;" type="default" size="small" (clickAction)="cancelDropdown()">取消\n </hd-button>\n <hd-button type="primary" size="small" (clickAction)="submitGrids()">完成</hd-button>\n </div>\n </nz-dropdown-menu>\n </ng-template>\n </hd-button-group>\n <hd-space type="row" size="12"></hd-space>\n <ng-container *ngTemplateOutlet="tableTotal"></ng-container>\n <hd-space *ngIf="tableTotal" type="row" size="12"></hd-space>\n <nz-table *ngIf="showTable" #hdTable class="hd-table-container" [nzScroll]="scroll" nzShowSizeChanger\n nzShowSizeChanger nzShowQuickJumper nzFrontPagination="false" nzSize="middle" [nzData]="tableData.content"\n [nzTotal]="tableData.totalElements" [(nzPageIndex)]="tablePageIndex" [nzLoading]="tableLoading"\n [nzPageSizeOptions]="[ 10, 50, 100, 200 ]" [(nzPageSize)]="tablePageSize" (nzPageSizeChange)="search(true)"\n (nzPageIndexChange)="search(false)" (nzCurrentPageDataChange)="showSelected ? currentPageDataChange($event) : null"\n [nzShowTotal]="tableTotalTemplate">\n <thead>\n <tr>\n <th nzWidth="40px" nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="isAllDisplayDataChecked"\n [nzIndeterminate]="isIndeterminate" (nzCheckedChange)="checkAll($event)"></th>\n <ng-container *ngFor="let col of tableCols">\n <th *ngIf="col.isShow" [nzWidth]="col.width + \'px\'" [nzAlign]="col.align"\n [nzLeft]="col.fixed === \'left\' ? col.fixedWidth + \'px\' : null"\n [nzRight]="col.fixed === \'right\' ? 0 + \'px\' : null" nz-resizable nzBounds="window"\n (nzResizeEnd)="onResize($event, col.title)">\n {{ col.title }}\n <nz-resize-handle nzDirection="right">\n <div class="resize-trigger"></div>\n </nz-resize-handle>\n </th>\n </ng-container>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor="let data of hdTable.data;index as i">\n <td nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="mapOfCheckedId[data[selectField]]"\n (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngFor="let col of tableCols">\n <td *ngIf="col.isShow" [ngStyle]="{\'max-width\': col.width + \'px\'}" [nzAlign]="col.align"\n [nzLeft]="col.fixed === \'left\' ? col.fixedWidth + \'px\' : null"\n [nzRight]="col.fixed === \'right\' ? 0 + \'px\' : null">\n <ng-container *ngIf="col.title === \'操作\';else notOperateTemplate">\n <div class="common-btn-group">\n <ng-container *ngFor="let btn of col.btnList">\n <ng-container *ngIf="!btn.showConfirm;else showConfirmTemplate">\n <a *ngIf="btn.permission ? btn.permission(data) : true"\n [class]="btn.name === \'删除\' ? \'common-danger-btn\': \'\'"\n (click)="triggerEvent(btn.click || null, data)">{{ btn.name }}</a>\n </ng-container>\n <ng-template #showConfirmTemplate>\n <a *ngIf="btn.permission ? btn.permission(data) : true"\n [class]="btn.name === \'删除\' ? \'common-danger-btn\': \'\'" nz-popconfirm\n [nzPopconfirmTitle]="\'确认要\' + btn.name + \'吗?\'"\n (nzOnConfirm)="triggerEvent(btn.click || null, data)">{{\n btn.name }}</a>\n </ng-template>\n </ng-container>\n </div>\n </ng-container>\n <ng-template #notOperateTemplate>\n <ng-container *ngIf="col.name === \'state\';else otherTemplate">\n <hd-status [status]="data[\'state\']">{{ col.render ? col.render(data) : data[\'state\'] }}\n </hd-status>\n </ng-container>\n <ng-template #otherTemplate>\n <ng-container *ngIf="col.click;else noClickTemplate">\n <ng-container\n *ngIf="!isTextOverflow(col.render ? col.render(data) : data[col.name], col.width);else overflowTemplate">\n <a [ngStyle]="{\'color\': col?.color ? col.color : null}"\n (click)="triggerEvent(col.click || null, data)">{{ col.render ? col.render(data) :\n data[col.name]}}</a>\n </ng-container>\n <ng-template #overflowTemplate>\n <a [ngStyle]="{\'color\': col?.color ? col.color : null}" nz-tooltip\n [nzTooltipTitle]="col.render ? col.render(data) : data[col.name]"\n (click)="triggerEvent(col.click || null, data)">{{ col.render ? col.render(data) :\n data[col.name]}}</a>\n </ng-template>\n </ng-container>\n <ng-template #noClickTemplate>\n <ng-container\n *ngIf="!isTextOverflow(col.render ? col.render(data) : data[col.name], col.width);else overflowTemplate">\n <span [ngStyle]="{\'color\': col?.color ? col.color : null}">{{ col.render ? col.render(data) :\n data[col.name]}}</span>\n </ng-container>\n <ng-template #overflowTemplate>\n <span [ngStyle]="{\'color\': col?.color ? col.color : null}" nz-tooltip\n [nzTooltipTitle]="col.render ? col.render(data) : data[col.name]">\n {{ col.render ? col.render(data) : data[col.name]}}</span>\n </ng-template>\n </ng-template>\n </ng-template>\n </ng-template>\n </td>\n </ng-container>\n </tr>\n \x3c!-- 合计所有数据区域 需要后端接口配合 --\x3e\n <tr *ngIf="showTableTotal" class="hd-table-total">\n <td>合计</td>\n <ng-container *ngFor="let tableTotalOption of tableTotalOptionList">\n <td>{{ tableTotalOption }}</td>\n </ng-container>\n </tr>\n </tbody>\n <ng-template #tableTotalTemplate>\n 共 {{tableData.totalElements}} 条数据\n </ng-template>\n </nz-table>\n</ng-container>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset;padding:0 6px!important}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-bottom,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-top{cursor:row-resize}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-left,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-right{cursor:col-resize}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-bottomRight,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-bottomLeft,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-topRight{cursor:nesw-resize}.hd-table-container ::ng-deep .ant-pagination-options-quick-jumper input{border-radius:2px;border:1px solid #d9d9d9}.hd-table-container ::ng-deep .ant-pagination-options .ant-select-selection{border-radius:2px}.hd-table-container ::ng-deep .ant-table-thead>tr>th{border-bottom:1px solid #ecf1ed;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hd-table-container ::ng-deep .ant-table-tbody>tr>td{border-bottom:1px solid #ecf1ed;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hd-table-container ::ng-deep .hd-table-total>td{border:0!important}.resize-trigger{height:15px;background:#e8e8e8;position:absolute}.nz-resizable-preview{border-width:0 1px 0 0}::ng-deep .ant-dropdown-menu{border-radius:0}::ng-deep .ant-dropdown{margin-top:8px!important}"]}]}],e.ctorParameters=function(){return[{type:le}]},e.propDecorators={uuid:[{type:t.Input}],tableCols:[{type:t.Input}],tableData:[{type:t.Input}],showSelected:[{type:t.Input}],selectField:[{type:t.Input}],showTableTotal:[{type:t.Input}],tableTotalOption:[{type:t.Input}],selectEvent:[{type:t.Output}],tableSearchEvent:[{type:t.Output}],tableLoading:[{type:t.Input}],tablePageIndex:[{type:t.Input}],tablePageSize:[{type:t.Input}],tablePageIndexChange:[{type:t.Output}],tablePageSizeChange:[{type:t.Output}],tableTotal:[{type:t.ContentChild,args:["tableTotal",{static:!1}]}],tableLeftButton:[{type:t.ContentChild,args:["tableLeftButton",{static:!1}]}],tableRightButton:[{type:t.ContentChild,args:["tableRightButton",{static:!1}]}]},z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSelected",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTableTotal",void 0),e}();var he=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,p.NzTableModule,G,re,F,S,m.NzToolTipModule,c.NzPopconfirmModule,h.NzResizableModule,d.NzDropDownModule,g.NzTreeModule],declarations:[ce],providers:[le],exports:[ce],schemas:[t.NO_ERRORS_SCHEMA]}]}],e}(),me=function(){function e(){this.showIcon=!0}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-tip",template:"<nz-content>\n <div *ngIf=\"showIcon; else noIcon\" class=\"hd-tip\" [ngStyle]=\"{'font-size': fontSize + 'px'}\">\n {{title}}\n </div>\n <ng-template #noIcon>\n <div [ngStyle]=\"{'font-size': fontSize + 'px', 'font-weight': 500, 'color': '#2A3634'}\">\n {{title}}\n </div>\n </ng-template>\n</nz-content>\n",styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-tip{display:flex;position:relative;font-weight:500;color:#2a3634;padding-left:8px;line-height:22px}.hd-tip::before{position:absolute;left:0;top:calc((100% - 12px)/ 2);width:4px;height:12px;background:#12a34f;border-radius:2px;content:''}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={showIcon:[{type:t.Input}],fontSize:[{type:t.Input}],title:[{type:t.Input}]},e}();var ge=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,i.NgZorroAntdModule],exports:[me],declarations:[me]}]}],e}(),ue=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{exports:[F,S,T,H,_,j,K,Q,G,re,Y,he,ge,ie,ne]}]}],e}(),fe=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule],exports:[ue],providers:[],entryComponents:[ee]}]}],e}(),be=function(){this.value=null};var xe=function(){};var ze=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),Ie=function(){};var ve=function(){this.value=null,this.showTime=!1};var we={Input:0,Select:1,Date:2,DateRange:3,MultipleSelect:4};we[we.Input]="Input",we[we.Select]="Select",we[we.Date]="Date",we[we.DateRange]="DateRange",we[we.MultipleSelect]="MultipleSelect";var ye=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),Ce=function(){this.require=!1,this.hide=!1,this.value=null,this.inputNumber=new A,this.showTime=!1,this.canSearch=!1};var Se=function(){};var Oe=function(){};var Le={Input:0,Select:1,Date:2,DateRange:3,TextArea:4,InputNumber:5,MultipleSelect:6,ViewDom:7,Switch:8,Time:9};Le[Le.Input]="Input",Le[Le.Select]="Select",Le[Le.Date]="Date",Le[Le.DateRange]="DateRange",Le[Le.TextArea]="TextArea",Le[Le.InputNumber]="InputNumber",Le[Le.MultipleSelect]="MultipleSelect",Le[Le.ViewDom]="ViewDom",Le[Le.Switch]="Switch",Le[Le.Time]="Time";var ke=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),De=function(){this.require=!1,this.width=1,this.hide=!1,this.totalWidth=0,this.isRowFirst=0,this.value=null,this.inputNumber=new A,this.showTime=!1};var Fe={Input:0,Select:1,Date:2,DateRange:3,TextArea:4,InputNumber:5,MultipleSelect:6,ViewDom:7,Switch:8,Time:9};Fe[Fe.Input]="Input",Fe[Fe.Select]="Select",Fe[Fe.Date]="Date",Fe[Fe.DateRange]="DateRange",Fe[Fe.TextArea]="TextArea",Fe[Fe.InputNumber]="InputNumber",Fe[Fe.MultipleSelect]="MultipleSelect",Fe[Fe.ViewDom]="ViewDom",Fe[Fe.Switch]="Switch",Fe[Fe.Time]="Time";var Ne=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),Te={fillSelectOption:function(e,t,n){var o=e;if(!o||!o.length)return o;for(var i=e.length,a=0;a<i;a++)o[a].name===t&&(o[a].selectOption.selectList=n);return o},fillArrayFormItem:function(e,t){if(!e||!e.length)return[];for(var n=e.length,o=0;o<n;o++)t[e[o].name]&&(e[o].value=t[e[o].name]);return e},arrayToSelectOptionList:function(e,t){var n=[];return e&&e.length?(t?t.labelTip&&t.valueTip?e.forEach((function(e){var o=e;o.label=e[t.label],o.value=e[t.value],t.valueTip&&(o[t.valueTip]=e[t.value]),t.labelTip&&(o[t.labelTip]=e[t.label]),n.push(o)})):e.forEach((function(e){var o=e;o.label=e[t.label],o.value=e[t.value],n.push(o)})):e.forEach((function(e){var t={};t.label=e,t.value=e,n.push(t)})),n):n}};e.ButtonSize=L,e.ButtonType=O,e.ColWidth=pe,e.ColorOption=Se,e.ExplainOption=Oe,e.FantasyNgzorroModule=fe,e.Filter=ve,e.FilterListType=we,e.FormItem=De,e.FormLine=Ce,e.FormLineType=Le,e.FormListType=Fe,e.HdButtonService=k,e.HdCurrentTableComponent=X,e.HdDetailFormService=ze,e.HdFilterService=ye,e.HdFormLinesService=ke,e.HdFormService=Ne,e.HdLogComponent=ee,e.HdLogService=te,e.HdOption=P,e.InputNumber=A,e.Page=E,e.SelectOption=M,e.TableColumn=be,e.TableTotalOption=xe,e.TotalOption=Ie,e.Utils=Te,e.ɵa=ue,e.ɵb=F,e.ɵba=me,e.ɵbb=ie,e.ɵbc=oe,e.ɵbd=ne,e.ɵc=D,e.ɵd=S,e.ɵe=C,e.ɵf=T,e.ɵg=N,e.ɵh=H,e.ɵi=V,e.ɵj=_,e.ɵk=W,e.ɵl=j,e.ɵm=B,e.ɵn=K,e.ɵo=U,e.ɵp=Q,e.ɵq=G,e.ɵr=J,e.ɵs=Z,e.ɵt=re,e.ɵu=ae,e.ɵv=Y,e.ɵw=he,e.ɵx=ce,e.ɵy=le,e.ɵz=ge,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var x=function(){return(x=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};function z(e,t,n,o){var i,a=arguments.length,r=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)r=Reflect.decorate(e,t,n,o);else for(var l=e.length-1;l>=0;l--)(i=e[l])&&(r=(a<3?i(r):a>3?i(t,n,r):i(t,n))||r);return a>3&&r&&Object.defineProperty(t,n,r),r}function I(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function v(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function w(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,i,a=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(o=a.next()).done;)r.push(o.value)}catch(e){i={error:e}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(i)throw i.error}}return r}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(w(arguments[t]));return e}var C=function(){function e(){}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-button-group",template:'<nz-content class="hd-button-group-container">\n <div class="hd-button-group-left">\n <ng-container *ngTemplateOutlet="buttonGroupLeft"></ng-container>\n </div>\n <div class="hd-button-group-right">\n <ng-container *ngTemplateOutlet="buttonGroupRight"></ng-container>\n </div>\n</nz-content>\n',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-button-group-container{display:flex;align-items:center;justify-content:space-between}.hd-button-group-container .hd-button-group-left ::ng-deep hd-button{margin-right:12px}.hd-button-group-container .hd-button-group-right ::ng-deep hd-button{margin-left:12px}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={buttonGroupLeft:[{type:t.ContentChild,args:["buttonGroupLeft",{static:!1}]}],buttonGroupRight:[{type:t.ContentChild,args:["buttonGroupRight",{static:!1}]}]},e}();var S=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,i.NgZorroAntdModule],declarations:[C],exports:[C]}]}],e}(),O={primary:"primary",dashed:"dashed",danger:"danger",default:"default",link:"link",submit:"submit",reset:"reset",add:"add"},L={normal:"normal",small:"small"},k=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),D=function(){function e(){this.type=O.default,this.size=L.normal,this.disabled=!1,this.clickAction=new t.EventEmitter,this.nzOnConfirm=new t.EventEmitter}return e.prototype.ngOnInit=function(){if((!1===this.loading||!0===this.loading)&&0===this.clickAction.observers.length&&0===this.nzOnConfirm.observers.length)throw"存在loading效果的hd-button组件禁止使用click绑定点击事件,请使用clickAction绑定!";if("submit"===this.type)throw"禁止使用submit类型的按钮,请使用普通按钮+click事件触发表单提交!"},e.prototype.ngOnChanges=function(e){e&&e.loading&&(!0===e.loading.currentValue&&!1===e.loading.previousValue||!1===e.loading.currentValue&&!0===e.loading.previousValue)&&(this.disabled=!this.disabled)},e.prototype.innerClickAction=function(e){this.loading||this.clickAction.emit(e)},e.decorators=[{type:t.Component,args:[{selector:"hd-button",template:'<nz-content class="hd-button-container">\n <button nz-button [nzType]="type" [disabled]="disabled" [nzLoading]="loading"\n [class]="size===\'small\'? \'hd-button-small\' : \'\' + type===\'add\'? \'ant-btn-primary\' : \'\'"\n (click)="innerClickAction($event)">\n <i nz-icon *ngIf="type===\'add\'" nzType="plus" style="margin-right: 4px;"></i>\n \x3c!-- 插槽 --\x3e\n <ng-content></ng-content>\n </button>\n</nz-content>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-button-container{display:inline-block}.hd-button-container button{height:28px;line-height:28px;padding:0 16px!important;border:0;font-size:12px;border-radius:4px}.hd-button-container .hd-button-small{padding:0 6px!important}.hd-button-container button[disabled]{background-color:#c8c8c8;color:#fff}.hd-button-container .ant-btn-reset{color:#fff;background:#5d7267}.hd-button-container .ant-btn-reset:hover{background:#72877b}.hd-button-container .ant-btn-default{background:#fff;border-radius:4px;border:1px solid #ced0da;font-size:12px;font-weight:400;color:#2a3634;height:28px;line-height:26px}.hd-button-container .ant-btn-default:hover{color:#12a34f;border:1px solid #12a34f}.hd-button-container .ant-btn-warning{background:#fff;border-radius:4px;border:1px solid #ced0da;font-size:12px;font-weight:400;color:#2a3634;height:28px;line-height:26px}.hd-button-container .ant-btn-warning:hover{color:#f05b24;border:1px solid #f05b24}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={type:[{type:t.Input}],size:[{type:t.Input}],loading:[{type:t.Input}],disabled:[{type:t.Input}],clickAction:[{type:t.Output}],nzOnConfirm:[{type:t.Output}]},z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"loading",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"disabled",void 0),e}();var F=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,i.NgZorroAntdModule],declarations:[D],exports:[D]}]}],e}(),N=function(){function e(){this.formCols=new Array}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-detail-form",template:'<nz-content class="hd-detail-form-container">\n <nz-descriptions [nzColumn]="{ xxl: 4, xl: 3, lg: 3, md: 3, sm: 2, xs: 1 }">\n <ng-container *ngFor="let col of formCols">\n <nz-descriptions-item [nzTitle]="col.label">\n <span [ngStyle]="{\'color\': col?.color ? col.color : null}">{{(col.value === \'0\' || col.value === 0 || col.value\n )? col.value : \'&lt;空&gt;\'}}</span>\n </nz-descriptions-item>\n </ng-container>\n </nz-descriptions>\n</nz-content>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-detail-form-container ::ng-deep .ant-descriptions-item-content{word-break:break-all;color:rgba(0,0,0,.85);font-weight:400}.hd-detail-form-container ::ng-deep .ant-descriptions-item-label{color:rgba(0,0,0,.65)}.hd-detail-form-container ::ng-deep .ant-descriptions-item{padding-top:6px!important;padding-bottom:6px!important}.hd-detail-form-container ::ng-deep td{white-space:unset!important}.hd-detail-form-container .ng-star-inserted,.hd-detail-form-container ::ng-deep .ant-descriptions-item{padding-left:0!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={formCols:[{type:t.Input}]},e}();var T=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,i.NgZorroAntdModule],exports:[N],declarations:[N]}]}],e}(),E=function(){this.totalPages=0,this.totalElements=0,this.pageNumber=0,this.pageSize=10,this.hasContent=!1,this.hasNext=!1,this.content=[]};var P=function(){};var M=function(){this.showLabelAndValue=!1,this.hdDropdownMatchSelectWidth=!1,this.hdServerSearch=!1,this.hdShowItemCode=!1};var A=function(){this.min=0,this.max=99999999,this.step=1};var V=function(){function e(){this.showSelected=!1,this.allowDrop=!1,this.scroll={x:"1px"},this.selectField="billNumber",this.selectEvent=new t.EventEmitter,this.showTotal=!1,this.totalOption=[],this.columnsNumber=0,this.hdFrontPagination=!1,this.totalOptionList=[],this.tableData=new E,this.tableLoading=!1,this.tablePageIndex=1,this.tablePageSize=10,this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.listOfDisplayData=[],this.listOfAllData=[],this.mapOfCheckedId={},this.mapOfCheckList={}}return e.prototype.ngOnInit=function(){this.countSelected(),this.calculateTotal()},e.prototype.ngOnChanges=function(){this.countSelected(),this.calculateTotal()},e.prototype.countSelected=function(){var e=this;this.showSelected&&this.selectedField&&this.lines&&this.lines.length&&(this.lines.forEach((function(t){!0===t[e.selectedField]&&(e.mapOfCheckedId[t[e.selectField]]=!0,e.mapOfCheckList[t[e.selectField]]=t)})),this.lines.length===Object.keys(this.mapOfCheckList).length&&(this.isAllDisplayDataChecked=!0,this.isIndeterminate=!0))},Object.defineProperty(e.prototype,"LodashRound",{get:function(){return r.round},enumerable:!0,configurable:!0}),e.prototype.drop=function(e){l.moveItemInArray(this.lines,e.previousIndex,e.currentIndex),this.lines=JSON.parse(JSON.stringify(this.lines))},e.prototype.calculateTotal=function(){var e=this;this.showTotal&&this.lines&&this.lines.length&&(this.totalOptionList=new Array(Number(this.columnsNumber)-1).fill(""),this.totalOption.forEach((function(t){t.insertIndex&&(t.insertValue||0===t.insertValue)&&(e.totalOptionList[t.insertIndex-1]={value:t.insertValue,align:t.align||"right",showDecimal:t.showDecimal||!1})})))},e.prototype.currentPageDataChange=function(e){this.listOfDisplayData=e,this.refreshStatus()},e.prototype.resetStatus=function(){this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.mapOfCheckedId={},this.mapOfCheckList={},this.selectEvent.emit([])},e.prototype.refreshStatus=function(e,t){var n=this;void 0===e&&(e=!1),void 0===t&&(t=null),e&&t?!this.mapOfCheckList[t[this.selectField]]&&(this.mapOfCheckList[t[this.selectField]]=t):!e&&t&&this.mapOfCheckList[t[this.selectField]]&&delete this.mapOfCheckList[t[this.selectField]],this.isAllDisplayDataChecked=this.listOfDisplayData.every((function(e){return n.mapOfCheckedId[e[n.selectField]]})),this.isIndeterminate=this.listOfDisplayData.some((function(e){return n.mapOfCheckedId[e[n.selectField]]}))&&!this.isAllDisplayDataChecked,this.selectEvent&&this.selectEvent.emit(Object.values(this.mapOfCheckList))},e.prototype.checkAll=function(e){var t=this;this.listOfDisplayData.forEach((function(n){e?!t.mapOfCheckList[n[t.selectField]]&&(t.mapOfCheckList[n[t.selectField]]=n):t.mapOfCheckList[n[t.selectField]]&&delete t.mapOfCheckList[n[t.selectField]],t.mapOfCheckedId[n[t.selectField]]=e})),this.refreshStatus()},e.decorators=[{type:t.Component,args:[{selector:"hd-detail-lines",template:'<ng-container>\n <nz-table #hdTable [nzScroll]="scroll" class="hd-table-container" nzShowSizeChanger\n [nzFrontPagination]="hdFrontPagination" [nzShowQuickJumper]="hdFrontPagination" [nzShowTotal]="tableTotalTemplate"\n nzSize="middle" [nzData]="lines" [nzLoading]="tableLoading"\n (nzCurrentPageDataChange)="showSelected ? currentPageDataChange($event) : null">\n <thead>\n <tr>\n <th *ngIf="showSelected" nzWidth="40px" nzLeft="0px" nzShowCheckbox [(nzChecked)]="isAllDisplayDataChecked"\n [nzIndeterminate]="isIndeterminate" (nzCheckedChange)="checkAll($event)"></th>\n <ng-container *ngTemplateOutlet="detailLineHead"></ng-container>\n </tr>\n </thead>\n <tbody *ngIf="!allowDrop;else allowDropTemplate">\n <tr *ngFor="let data of hdTable.data;index as i">\n <td *ngIf="showSelected" nzWidth="40px" nzLeft="0px" nzShowCheckbox\n [(nzChecked)]="mapOfCheckedId[data[selectField]]" (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngTemplateOutlet="detailLineBody;context:{$implicit: data, index: i}"></ng-container>\n </tr>\n \x3c!-- 合计区域 --\x3e\n <tr *ngIf="showTotal" class="hd-table-total">\n <td *ngIf="showSelected"></td>\n <td>合计</td>\n <ng-container *ngFor="let totalOption of totalOptionList">\n <td [nzAlign]="totalOption.align ? totalOption.align : \'left\'">{{ (totalOption.value || totalOption.value ===\n 0) ? (((totalOption.value % 1 === 0) && !totalOption.showDecimal ) ? totalOption.value :\n LodashRound(totalOption.value,2).toFixed(2)) : \'\' }} </td>\n </ng-container>\n </tr>\n </tbody>\n <ng-template #allowDropTemplate>\n <tbody cdkDropList (cdkDropListDropped)="drop($event)">\n <tr *ngFor="let data of hdTable.data;index as i" cdkDrag>\n <td *ngIf="showSelected" nzWidth="40px" nzLeft="0px" nzShowCheckbox\n [(nzChecked)]="mapOfCheckedId[data[selectField]]" (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngTemplateOutlet="detailLineBody;context:{$implicit: data, index: i}"></ng-container>\n </tr>\n \x3c!-- 合计区域 --\x3e\n <tr *ngIf="showTotal" class="hd-table-total">\n <td *ngIf="showSelected"></td>\n <td>合计</td>\n <ng-container *ngFor="let totalOption of totalOptionList">\n <td [nzAlign]="totalOption.align ? totalOption.align : \'left\'">{{ (totalOption.value || totalOption.value\n === 0) ? (((totalOption.value % 1 === 0) && !totalOption.showDecimal ) ? totalOption.value :\n LodashRound(totalOption.value,2).toFixed(2)) : \'\' }} </td>\n </ng-container>\n </tr>\n </tbody>\n </ng-template>\n <ng-template #tableTotalTemplate>\n 共 {{lines.length}} 条数据\n </ng-template>\n </nz-table>\n</ng-container>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-table-container ::ng-deep .ant-pagination-options-quick-jumper input{border-radius:2px;border:1px solid #d9d9d9}.hd-table-container ::ng-deep .ant-pagination-options .ant-select-selection{border-radius:2px}.hd-table-container ::ng-deep .ant-table-thead>tr>th{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .ant-table-tbody>tr>td{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .hd-table-total>td{border:0!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={lines:[{type:t.Input}],showSelected:[{type:t.Input}],allowDrop:[{type:t.Input}],scroll:[{type:t.Input}],selectField:[{type:t.Input}],selectedField:[{type:t.Input}],selectEvent:[{type:t.Output}],detailLineHead:[{type:t.ContentChild,args:["detailLineHead",{static:!1}]}],detailLineBody:[{type:t.ContentChild,args:["detailLineBody",{static:!1}]}],showTotal:[{type:t.Input}],totalOption:[{type:t.Input}],columnsNumber:[{type:t.Input}],hdFrontPagination:[{type:t.Input}]},z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSelected",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"allowDrop",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTotal",void 0),e}();var H=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,p.NzTableModule,l.DragDropModule],declarations:[V],exports:[V],schemas:[t.NO_ERRORS_SCHEMA]}]}],e}(),R={"#FAB13B":["partshipped","committed","partValid"],"#9FA4A2":["initial","uncommitted","OFF_LINE"],"#F5222D":["delete","deleted","aborted","rejected"],"#3B77E3":["audited","finished","adjusted","invoiced","audit","submitted"],"#12A34F":["shipped","received","checked","using","reverse","valid","approved","ON_LINE"],"#F05B24":["picking","partialReceived","partDelete"]},W=(function(){function e(){}e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"})}(),function(){function e(){this.tip="详情"}return e.prototype.ngOnInit=function(){this.setStatusColor()},e.prototype.ngOnChanges=function(){this.setStatusColor()},e.prototype.setStatusColor=function(){for(var e in R)if(-1!==R[e].indexOf(this.state)){this.statusColor=e;break}},e.decorators=[{type:t.Component,args:[{selector:"hd-detail-tip",template:'<nz-content class="hd-detail-tip-container">\n <div *ngIf="stateText" class="hd-detail-tip-state" [ngStyle]="{\'background\': statusColor || \'#9FA4A2\'}">{{stateText}}\n </div>\n <div class="hd-detail-tip-billNumber">{{billNumber}}</div>\n <div *ngIf="tip" class="hd-detail-tip-name">&nbsp;&nbsp;/&nbsp;&nbsp;{{tip}}</div>\n</nz-content>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-detail-tip-container{display:flex;align-items:center}.hd-detail-tip-container .hd-detail-tip-state{padding:2px 6px;border-radius:2px;font-size:12px;font-weight:500;color:#fff;margin-right:8px}.hd-detail-tip-container .hd-detail-tip-billNumber{font-size:16px;font-weight:500;color:#2a3634}.hd-detail-tip-container .hd-detail-tip-name{font-size:14px;font-weight:500;color:#5d7267}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={state:[{type:t.Input}],stateText:[{type:t.Input}],billNumber:[{type:t.Input}],tip:[{type:t.Input}]},e}());var _=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,i.NgZorroAntdModule],declarations:[W],exports:[W]}]}],e}(),B=function(){function e(e){this.fb=e,this.searchEvent=new t.EventEmitter,this.isShowMore=!0,this.filterListModular=0}return e.prototype.ngOnInit=function(){this.init()},e.prototype.ngOnChanges=function(){this.init()},e.prototype.init=function(){var e=this;if(this.isShowMore=!0,!this.checkList(this.filterList))throw"filter组件数据格式不规范";this.filterListModular=this.filterList.length%4;var t={};this.filterList.forEach((function(n,o){t[n.name]=e.fb.control(n.value,[]),n.show=o<7})),this.validateFilterForm=this.fb.group(t)},e.prototype.triggerEvent=function(e,t,n){if(e&&n)e(t,n);else{if(!e)return;e(t)}},e.prototype.computeOffset=function(){return 4===this.filterList.length?18:this.isShowMore?0===this.filterListModular||this.filterList.length>7?0:6*(3-this.filterListModular):0===this.filterListModular?18:6*(3-this.filterListModular)},e.prototype.checkList=function(e){if(!e||e&&0===e.length)return!0;var t=[];if(e.forEach((function(e){t.push(e.name)})),y(new Set(t)).length!==e.length)throw"filter组件数据格式不规范,存在重复name值!";return!0},e.prototype.submitForm=function(){this.searchEvent.emit(this.validateFilterForm.getRawValue())},e.prototype.resetForm=function(){this.validateFilterForm.reset(),this.searchEvent.emit(this.validateFilterForm.getRawValue())},e.prototype.showMore=function(){var e=this;this.isShowMore=!this.isShowMore,this.filterList.forEach((function(t,n){t.show=!e.isShowMore||n<7}))},e.prototype.inputClean=function(e){var t={};t[e.name]=null,this.validateFilterForm.patchValue(t)},e.decorators=[{type:t.Component,args:[{selector:"hd-filter",template:'<form nz-form [formGroup]="validateFilterForm" class="ant-advanced-search-form hd-filter-container">\n \x3c!-- 整体结构 --\x3e\n <div nz-row [nzGutter]="24">\n \x3c!-- 对组件列表循环处理 --\x3e\n <ng-container *ngFor="let filter of filterList">\n <div nz-col [nzSpan]="6" [hidden]="!filter.show">\n <nz-form-item nzFlex>\n <nz-form-label class="hd-filter-label">{{filter.label}}</nz-form-label>\n <nz-form-control class="hd-filter-control">\n <ng-container [ngSwitch]="filter.type">\n \x3c!-- 这里数字对应枚举类型,可在hd-filter.service.ts文件中查看对应关系 --\x3e\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input nz-input [placeholder]="filter.placeholder ? filter.placeholder : \'请输入\' + filter.label"\n [formControlName]="filter.name"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)" />\n </nz-input-group>\n <ng-template #inputCleanTemplate><i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill"\n nzType="close-circle" *ngIf="validateFilterForm.get(filter.name).value"\n (click)="inputClean(filter)"></i></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select nzShowSearch [nzServerSearch]="filter.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="filter.selectOption.hdDropdownMatchSelectWidth ? filter.selectOption.hdDropdownMatchSelectWidth : false"\n nzAllowClear (nzOnSearch)="triggerEvent(filter.onSearchEvent || null, $event, filter.selectOption)"\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)"\n nzAllowClear>\n <nz-option *ngFor="let selectItem of filter.selectOption.selectList"\n [nzValue]="selectItem[filter.selectOption.value]" [nzLabel]="filter.selectOption.showLabelAndValue ? \'[\'+ selectItem[filter.selectOption.value] +\']\' +\n selectItem[filter.selectOption.label] : selectItem[filter.selectOption.label]"></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="filter.showTime"\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" [nzDisabledDate]="filter.hdDisabledDate"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)" nzShowTime\n nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n <nz-date-picker *ngIf="!filter.showTime"\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" [nzDisabledDate]="filter.hdDisabledDate"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="filter.name">\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)"\n </nz-range-picker>\n </ng-container>\n \x3c!-- 多项选择器 --\x3e\n <ng-container *ngSwitchCase="4">\n <nz-select\n [nzDropdownMatchSelectWidth]="filter.selectOption.hdDropdownMatchSelectWidth ? filter.selectOption.hdDropdownMatchSelectWidth : false"\n nzMode="multiple" nzShowSearch nzAllowClear\n [nzPlaceHolder]="filter.placeholder ? filter.placeholder : \'请选择\' + filter.label"\n [formControlName]="filter.name" [nzServerSearch]="filter.selectOption.hdServerSearch || false"\n (ngModelChange)="triggerEvent(filter.onChangeEvent || null, $event)"\n (nzOnSearch)="triggerEvent(filter.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of filter.selectOption.selectList"\n [nzValue]="selectItem[filter.selectOption.value]" [nzLabel]="filter.selectOption.showLabelAndValue ? \'[\'+ selectItem[filter.selectOption.value] +\']\' +\n selectItem[filter.selectOption.label] : selectItem[filter.selectOption.label]"></nz-option>\n </nz-select>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n </div>\n </ng-container>\n\n <div class="hd-filter-btn" nz-col [nzSpan]="6" [nzOffset]="computeOffset()">\n <a *ngIf="filterList.length > 7" class="hd-filter-more" (click)="showMore()">\n {{isShowMore ? \'展开\' : \'收起\'}}\n <i nz-icon [nzType]="isShowMore ? \'down\' : \'up\'"></i>\n </a>\n <hd-button type="primary" (click)="submitForm()">查询</hd-button>\n <hd-button type="reset" (click)="resetForm()">重置</hd-button>\n </div>\n </div>\n</form>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-filter-container{padding:20px 23px;background:#fff;box-shadow:0 0 12px 0 rgba(93,114,103,.08);border-radius:4px;margin-bottom:8px!important;font-size:12px}.hd-filter-container .ant-row{margin-right:0!important;margin-left:0!important}.hd-filter-container .ant-col-6{padding-left:0!important;padding-right:0!important}.hd-filter-container .hd-filter-label{width:108px;word-break:break-all}.hd-filter-container .hd-filter-control{width:calc(100% - 108px)}.hd-filter-container ::ng-deep .ant-calendar-picker{width:100%}.hd-filter-container .hd-filter-more{color:#12a34f}.hd-filter-container .hd-filter-btn{height:40px;display:inline-flex;align-items:center;justify-content:flex-end}.hd-filter-container hd-button{margin-left:12px}.hd-filter-container ::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}.hd-filter-container ::ng-deep .ant-select-selection--single{height:28px!important}.hd-filter-container ::ng-deep .ant-input{height:28px!important}.hd-filter-container ::ng-deep .ant-calendar-range-picker-input{text-align:left!important}.hd-filter-container .ant-input-number{width:100%}"]}]}],e.ctorParameters=function(){return[{type:o.FormBuilder}]},e.propDecorators={filterList:[{type:t.Input}],searchEvent:[{type:t.Output}]},e}();var j=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F],declarations:[B],exports:[B]}]}],e}(),q="row",$=function(){};!function(){function e(){}e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"})}();var J=function(){function e(){this.type=q,this.background="inherit",this.style=new $}return e.prototype.ngOnInit=function(){this.style.background=this.background,this.type===q?(this.style.width="100%",this.style.height=this.size+"px"):(this.style.height="100%",this.style.width=this.size+"px")},e.decorators=[{type:t.Component,args:[{selector:"hd-space",template:'<nz-content>\n <div [ngStyle]="style"></div>\n</nz-content>\n',styles:[""]}]}],e.ctorParameters=function(){return[]},e.propDecorators={type:[{type:t.Input}],size:[{type:t.Input}],background:[{type:t.Input}]},e}();var G=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F],declarations:[J],exports:[J]}]}],e}(),Z=function(){function e(e,n){this.fb=e,this.ngZone=n,this.tableLoading=!1,this.showSearch=!1,this.operateButtons=["add","delete"],this.scroll={x:"1px"},this.changeEvent=new t.EventEmitter,this.showDeleteConfirm=!1,this.paginationPageIndex=1,this.paginationPageSize=10,this.showTotal=!1,this.totalOption=[],this.columnsNumber=0,this.totalOptionList=[],this.showForm=!1,this.storeFormLinesData=[],this.filterStoreFormLinesData=[],this.filterIndexStore=[],this.isFilterData=!1,this.formValid=!1}return e.prototype.ngOnInit=function(){this.storeFormLinesData=this.formLinesData,this.init()},Object.defineProperty(e.prototype,"linesFormArray",{get:function(){return this.validateHdFormLines.get("lines")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"LodashRound",{get:function(){return r.round},enumerable:!0,configurable:!0}),e.prototype.getValid=function(){return this.formValid},e.prototype.innerGetValid=function(){var e=this,t=this.fb.group({lines:this.fb.array([])});return this.storeFormLinesData.forEach((function(n){var i={};e.formLines.forEach((function(t){i[t.name]=e.fb.control({value:0===n[t.name]?0:n[t.name]||t.value||null,disabled:t.disabled},t.require?[o.Validators.required]:[]),t.selectOption&&t.selectOption.label&&(i[t.selectOption.label]=e.fb.control(n[t.selectOption.label]||null,[]))})),i.lineIndex=e.fb.control(t.get("lines").controls.length,[]);var a=e.fb.group(i);e.formLines.forEach((function(t){t.onChangeEvent&&a.get(t.name).valueChanges.subscribe((function(n){return e.triggerEvent(t.onChangeEvent,n,a)}))})),t.get("lines").insert(t.get("lines").controls.length,a)})),t.valid},e.prototype.getLines=function(){var e=this,t=[];return this.storeFormLinesData.forEach((function(n){var o={};e.formLines.forEach((function(e){o[e.name]=n[e.name]})),o.lineIndex=n.lineIndex,t.push(o)})),t},e.prototype.searchLines=function(){var e=this;if(!(this.storeFormLinesData.length<1)){if(this.tableLoading=!0,!this.filterStr)return this.isFilterData=!1,void this.setStoreData();var t=this.filterStr.trim().toLowerCase();this.isFilterData=!0,this.filterIndexStore=[];var n=this.storeFormLinesData.filter((function(n,o){var i,a;try{for(var r=v(e.formLines),l=r.next();!l.done;l=r.next()){var p=l.value;if(p.hide&&p.canSearch||!p.hide&&"uuid"!==p.name)if((n[p.name]?n[p.name].toString().toLowerCase():"").includes(t))return e.filterIndexStore.push(o),!0}}catch(e){i={error:e}}finally{try{l&&!l.done&&(a=r.return)&&a.call(r)}finally{if(i)throw i.error}}return!1}));this.filterStoreFormLinesData=n,this.formLinesData=n,this.init(!0)}},e.prototype.setStoreData=function(){this.formLinesData=this.storeFormLinesData,this.init(!0)},e.prototype.getStyle=function(e,t,n){var o={"min-width":n};return t.style&&(o=x({},o,t.style)),t.colorOption&&t.colorOption.name&&e.get(t.colorOption.name).value&&(o=x({},o,{color:e.get(t.colorOption.name).value})),o},e.prototype.ngOnChanges=function(e){e.formLinesData&&JSON.stringify(e.formLinesData.currentValue)!==JSON.stringify(e.formLinesData.previousValue)&&(this.storeFormLinesData&&0===this.storeFormLinesData.length&&(this.storeFormLinesData=this.formLinesData),this.init()),e.totalOption&&JSON.stringify(e.totalOption.currentValue)!==JSON.stringify(e.totalOption.previousValue)&&this.calculateTotal()},e.prototype.calculateTotal=function(){var e=this;this.showTotal&&(this.totalOptionList=new Array(Number(this.columnsNumber)-1).fill(""),this.totalOption.forEach((function(t){t.insertIndex&&(t.insertValue||0===t.insertValue)&&(e.totalOptionList[t.insertIndex-1]={value:t.insertValue,align:t.align||"left",showDecimal:t.showDecimal||!1})})))},e.prototype.init=function(e){var t=this;void 0===e&&(e=!1),this.paginationPageIndex=1,this.checkList(this.formLines)?(this.createForm(),e||this.formLinesData&&(!this.formLinesData||0!==this.formLinesData.length)?this.addFormLineWithData():(this.tableLoading=!1,this.addFormLine(),this.showForm=!0),this.validateHdFormLines.valueChanges.subscribe((function(e){return t.onHdFormValueChanged(e)})),this.onHdFormValueChanged()):this.tableLoading=!1},e.prototype.createForm=function(){this.validateHdFormLines=this.fb.group({lines:this.fb.array([])}),this.newLine=this.newLineItem()},e.prototype.newLineItem=function(){var e=this,t={};this.formLines.forEach((function(n){t[n.name]=e.fb.control({value:n.value,disabled:n.disabled}||null,n.require&&!n.hide?[o.Validators.required]:[])})),t.lineIndex=this.fb.control(this.linesFormArray.controls.length,[]),t.isHdFormLineSearchAdd=this.fb.control(this.isFilterData,[]);var n=this.fb.group(t);return this.formLines.forEach((function(t){t.onChangeEvent&&t.onChangeEvent&&n.get(t.name).valueChanges.subscribe((function(o){return e.triggerEvent(t.onChangeEvent,o,n)}))})),n},e.prototype.calculateLineNumber=function(){this.linesFormArray.controls.forEach((function(e,t){e.get("lineIndex").setValue(t+1,{emitEvent:!1})}))},e.prototype.addFormLineWithData=function(){var e=this;this.formLinesData.forEach((function(t){var n={};e.formLines.forEach((function(i){n[i.name]=e.fb.control({value:0===t[i.name]?0:t[i.name]||i.value||null,disabled:i.disabled},i.require?[o.Validators.required]:[]),i.selectOption&&i.selectOption.label&&(n[i.selectOption.label]=e.fb.control(t[i.selectOption.label]||null,[]))})),n.lineIndex=e.fb.control(e.linesFormArray.controls.length+1,[]);var i=e.fb.group(n);e.formLines.forEach((function(t){t.onChangeEvent&&i.get(t.name).valueChanges.subscribe((function(n){e.triggerEvent(t.onChangeEvent,n,i)}))})),e.linesFormArray.insert(e.linesFormArray.controls.length,i)})),this.tableLoading=!1,this.showForm=!0},e.prototype.addFormLine=function(e){this.linesFormArray.insert(e||this.linesFormArray.controls.length,this.newLineItem()),this.calculateLineNumber()},e.prototype.deleteFormLine=function(e){this.linesFormArray.removeAt(e-1),!this.isFilterData&&this.linesFormArray.controls&&0===this.linesFormArray.controls.length?this.addFormLine():(this.paginationPageIndex*this.paginationPageSize===this.linesFormArray.controls.length+this.paginationPageSize&&this.paginationPageIndex--,this.calculateLineNumber())},e.prototype.triggerEvent=function(e,t,n){e&&e(t,n)},e.prototype.pageIndexChange=function(e){this.paginationPageIndex=e},e.prototype.pageSizeChange=function(e){this.paginationPageSize=e},e.prototype.onHdFormValueChanged=function(e){var t=this;if(this.isFilterData)if(e&&e.lines&&0!==this.filterIndexStore.length){var n=e.lines;if(n.length===this.filterIndexStore.length)this.filterIndexStore.forEach((function(e,o){t.storeFormLinesData[e]=x({},t.filterStoreFormLinesData[o],n[o])}));else if(n.length>this.filterIndexStore.length){for(var o=this.validateHdFormLines.getRawValue().lines,i=-1,a=0;a<o.length;a++)if(o[a].isHdFormLineSearchAdd){i=a;break}-1!==i&&this.storeFormLinesData.splice(this.filterIndexStore[i-1]+1,0,o[i]),this.filterIndexStore.push(this.filterIndexStore[i-1]+1)}else{var r=-1,l=0;if(0===n.length)r=0;else for(a=0;a<n.length;a++){if(n[a].lineIndex-l>1){r=a;break}l++}if(-1!==r){this.storeFormLinesData=this.storeFormLinesData.filter((function(e,n){return n!==t.filterIndexStore[r]})),this.filterIndexStore.splice(r,1);for(a=0;a<this.filterIndexStore.length;a++)a>=r&&this.filterIndexStore[a]--}else{var p=this.filterIndexStore[this.filterIndexStore.length-1];this.storeFormLinesData=this.storeFormLinesData.filter((function(e,t){return t!==p})),this.filterIndexStore.pop()}}}else e&&e.lines&&(this.storeFormLinesData=e.lines);else e&&e.lines&&(this.storeFormLinesData=e.lines);this.isFilterData?this.formValid?this.formValid=this.validateHdFormLines.valid:this.validateHdFormLines.valid?this.formValid=this.innerGetValid():this.formValid=this.validateHdFormLines.valid:this.formValid=this.validateHdFormLines.valid,this.changeEvent.emit(this.validateHdFormLines)},e.prototype.checkList=function(e){if(!e||e&&0===e.length)return!1;var t=[],n=[];if(e.forEach((function(o){if(t.push(o.name),o.onSearchEvent&&o.selectOption&&(n=[],e.forEach((function(e){e.name!==o.selectOption.value&&e.name!==o.selectOption.label||n.push(e.name)})),n.length<2))throw"formLines组件数据格式不规范,字段"+o.name+"的selectOption的value、label字段未能在formLines中找到对应字段!"})),y(new Set(t)).length!==e.length)throw"formLines组件数据格式不规范,存在重复name值!";return!0},e.prototype.submitForm=function(){this.changeEvent.emit(this.validateHdFormLines.getRawValue())},e.prototype.resetForm=function(){for(var e=this.linesFormArray.controls.length;e>=0;e--)this.deleteFormLine(e);this.paginationPageIndex=1},e.prototype.inputClean=function(e,t){t.get(e.name).setValue(null)},e.prototype.selectValue=function(e){document.querySelector(e).select()},e.decorators=[{type:t.Component,args:[{selector:"hd-form-lines",template:'<hd-button-group *ngIf="showForm && showSearch">\n <ng-template #buttonGroupLeft>\n <nz-input-group [nzSuffix]="suffixIconSearch">\n <input type="text" nz-input (keyup.enter)="searchLines()" placeholder="请输入内容搜索" style="width: 300px;"\n [(ngModel)]="filterStr" />\n </nz-input-group>\n <ng-template #suffixIconSearch>\n <i nz-icon nzType="search" (click)="searchLines()"></i>\n </ng-template>\n </ng-template>\n</hd-button-group>\n<hd-space background="transparent" type="row" size="16"></hd-space>\n<form *ngIf="showForm" nz-form [formGroup]="validateHdFormLines"\n class="ant-advanced-search-form hd-formLines-container">\n <nz-table nzTemplateMode [nzFrontPagination]="false" [nzLoading]="tableLoading" [nzScroll]="scroll">\n <thead>\n <tr>\n <th nzWidth="58px" nzLeft="0px">序号</th>\n <ng-container *ngFor="let item of formLines">\n <th *ngIf="!item.hide" [nzAlign]="item.align ? item.align : \'left\'">\n <span *ngIf="item.require" style="color: red;">*</span>{{item.label}}\n </th>\n </ng-container>\n <th style="width: 80px" nzRight="0">操作</th>\n </tr>\n </thead>\n <tbody>\n <ng-container\n *ngFor="let line of linesFormArray.controls.slice((paginationPageIndex - 1) * paginationPageSize, (paginationPageIndex - 1) * paginationPageSize + paginationPageSize);index as dataIndex"\n formArrayName="lines">\n <tr [formGroup]="line">\n <td nzWidth="58px" nzLeft="0px">\n {{line.get(\'lineIndex\').value}}\n </td>\n <ng-container *ngFor="let formItem of formLines">\n <td *ngIf="!formItem.hide" [nzAlign]="formItem.align ? formItem.align : \'left\'">\n <nz-form-item>\n <nz-form-control [nzErrorTip]="formItem.label + \'不能为空\'">\n <ng-container [ngSwitch]="formItem.type">\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input [ngStyle]="getStyle(line, formItem, \'100px\')" nz-input\n [ngStyle]="{\'color\': formItem?.colorOption?.name ? line.get(formItem.colorOption.name ).value : null}"\n [id]="\'input-\' + formItem.name + line.get(\'lineIndex\').value"\n (click)="formItem.isSelect ? selectValue(\'#input-\' + formItem.name + line.get(\'lineIndex\').value) : null"\n [maxlength]="formItem.maxLength || null"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [formControlName]="formItem.name" />\n </nz-input-group>\n <ng-template #inputCleanTemplate>\n <i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill" nzType="close-circle"\n *ngIf="line.get(formItem.name).value && !line.get(formItem.name).disabled"\n (click)="inputClean(formItem ,line)"></i>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select nzShowSearch [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzAllowClear\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event, line)"\n [ngStyle]="getStyle(line, formItem, \'200px\')">\n <nz-option\n *ngFor="let selectItem of (formItem.selectOption.selectList || line.get(formItem.selectOption.selectListName).value)"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]">\n </nz-option>\n <nz-option\n *ngIf="formItem.selectOption.label && line.get(formItem.name) && line.get(formItem.selectOption.label)?.value && line.get(formItem.selectOption.value)?.value"\n [nzLabel]="(formItem.selectOption.value === \'code\' || formItem.selectOption.value === \'productCode\' || formItem.selectOption.hdShowItemCode) ? (\'[\'+ line.get(formItem.selectOption.value).value + \']\' + line.get(formItem.selectOption.label).value) : line.get(formItem.selectOption.label).value"\n [nzValue]="line.get(formItem.selectOption.value).value" nzHide></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="formItem.showTime"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" [nzDisabledDate]="formItem.hdDisabledDate" nzShowTime\n nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n <nz-date-picker *ngIf="!formItem.showTime"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" [nzDisabledDate]="formItem.hdDisabledDate">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="formItem.name">\n </nz-range-picker>\n </ng-container>\n <ng-container *ngSwitchCase="4">\n <textarea\n [ngStyle]="{\'color\': formItem?.colorOption?.name ? line.get(formItem.colorOption.name).value : null}"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [maxlength]="formItem.maxLength || null" rows="4" nz-input\n [maxlength]="formItem.maxLength || null" [formControlName]="formItem.name"></textarea>\n </ng-container>\n <ng-container *ngSwitchCase="5">\n <div style="display: flex;align-items: center;">\n <nz-input-number [ngStyle]="getStyle(line, formItem, \'100px\')"\n [maxlength]="formItem.maxLength || null" [formControlName]="formItem.name"\n [nzMin]="formItem?.inputNumber?.min || 0" [nzMax]="formItem?.inputNumber?.max || 99999999"\n [nzStep]="formItem?.inputNumber?.step || 1"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [nzId]="\'inputNumber-\' + formItem.name + line.get(\'lineIndex\').value"\n (click)="formItem.isSelect ? selectValue(\'#inputNumber-\' + formItem.name + line.get(\'lineIndex\').value) : null">\n </nz-input-number>\n <div *ngIf="formItem?.explainOptionRight?.show"\n [style.color]="formItem?.explainOptionRight?.color ? formItem.explainOptionRight.color : null">\n &nbsp;&nbsp;{{line.get(formItem.explainOptionRight.name).value}}</div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase="6">\n <nz-select nzMode="multiple" [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzShowSearch nzAllowClear\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" [ngStyle]="getStyle(line, formItem, \'200px\')"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event, line)">\n <nz-option *ngFor="let selectItem of formItem.selectOption.selectList"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]"></nz-option>\n <ng-container\n *ngIf="formItem.selectOption.label && line.get(formItem.name) && line.get(formItem.selectOption.label)?.value && line.get(formItem.selectOption.value)?.value">\n <nz-option *ngFor="let option of line.get(formItem.selectOption.value).value;index as i"\n [nzLabel]="line.get(formItem.selectOption.label).value[i]" [nzValue]="option" nzHide>\n </nz-option>\n </ng-container>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="7">\n {{(formItem.preserveNumber && line.get(formItem.name).value) ?\n LodashRound(line.get(formItem.name).value,formItem.preserveNumber).toFixed(formItem.preserveNumber)\n : line.get(formItem.name).value}}\n </ng-container>\n <ng-container *ngSwitchCase="8">\n <nz-switch [formControlName]="formItem.name"></nz-switch>\n </ng-container>\n <ng-container *ngSwitchCase="9">\n <nz-time-picker [formControlName]="formItem.name"></nz-time-picker>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n <div *ngIf="formItem?.explainOption?.show"\n [style.color]="formItem?.explainOption?.color ? formItem.explainOption.color : null">\n {{line.get(formItem.explainOption.name).value}}</div>\n </td>\n </ng-container>\n <td style="width: 80px" nzRight="0">\n <span class="common-btn-group">\n <a *ngIf="operateButtons.includes(\'add\')" (click)="addFormLine(line.get(\'lineIndex\').value)">添加</a>\n <a class="common-danger-btn" *ngIf="operateButtons.includes(\'delete\') && !showDeleteConfirm"\n (click)="deleteFormLine(line.get(\'lineIndex\').value)">删除</a>\n <a class="common-danger-btn" *ngIf="operateButtons.includes(\'delete\') && showDeleteConfirm" nz-popconfirm\n nzPopconfirmTitle="确认要删除该行吗?" nzPopconfirmPlacement="bottom"\n (nzOnConfirm)="deleteFormLine(line.get(\'lineIndex\').value)">删除</a>\n </span>\n </td>\n </tr>\n </ng-container>\n \x3c!-- 合计区域 --\x3e\n <tr *ngIf="showTotal" class="hd-table-total">\n <td>合计</td>\n <ng-container *ngFor="let totalOption of totalOptionList">\n <td [nzAlign]="totalOption.align ? totalOption.align : \'left\'">{{ (totalOption.value || totalOption.value ===\n 0) ? (((totalOption.value % 1 === 0) && !totalOption.showDecimal ) ? totalOption.value :\n LodashRound(totalOption.value,2).toFixed(2)) : \'\' }} </td>\n </ng-container>\n </tr>\n </tbody>\n </nz-table>\n <nz-list\n *ngIf="linesFormArray.controls.slice((paginationPageIndex - 1) * paginationPageSize, (paginationPageIndex - 1) * paginationPageSize + paginationPageSize).length === 0"\n [nzDataSource]="[]"></nz-list>\n <ng-container>\n <hd-space background="transparent" type="row" size="16"></hd-space>\n <nz-pagination [nzSize]="\'small\'" style="text-align: right;" [nzPageIndex]="paginationPageIndex"\n [nzPageSize]="paginationPageSize" [nzPageSizeOptions]="[10, 20, 30, 40, 50]"\n [nzTotal]="linesFormArray.controls.length" nzShowSizeChanger (nzPageIndexChange)="pageIndexChange($event)"\n (nzPageSizeChange)="pageSizeChange($event)" [nzShowTotal]="totalTemplate"></nz-pagination>\n <ng-template #totalTemplate let-total>共 {{linesFormArray.controls.length}} 条数据</ng-template>\n </ng-container>\n</form>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-formLines-container ::ng-deep td{padding:1.5px 8px!important}.hd-formLines-container .ant-table-tbody>tr>td,.hd-formLines-container ::ng-deep .ant-table-thead>tr>th{padding:16px 8px}.hd-formLines-container ::ng-deep .hd-table-total>td{border:0!important}.hd-formLines-container .ant-input-number{width:100%}"]}]}],e.ctorParameters=function(){return[{type:o.FormBuilder},{type:t.NgZone}]},e.propDecorators={tableLoading:[{type:t.Input}],showSearch:[{type:t.Input}],formLines:[{type:t.Input}],formLinesData:[{type:t.Input}],operateButtons:[{type:t.Input}],scroll:[{type:t.Input}],changeEvent:[{type:t.Output}],showDeleteConfirm:[{type:t.Input}],showTotal:[{type:t.Input}],totalOption:[{type:t.Input}],columnsNumber:[{type:t.Input}]},z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"tableLoading",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSearch",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"showDeleteConfirm",void 0),z([i.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTotal",void 0),e}();var Q=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F,G,S],declarations:[Z],exports:[Z]}]}],e}(),U=function(){function e(e){this.fb=e,this.changeEvent=new t.EventEmitter}return e.prototype.ngOnInit=function(){this.init()},e.prototype.ngOnChanges=function(e){this.dealRow()},e.prototype.triggerEvent=function(e,t){e&&e(t)},e.prototype.init=function(){var e=this;if(!this.checkList(this.formList))throw"form组件数据格式不规范";this.dealRow();var t={};this.formList.forEach((function(n,i){if(2===n.type&&n.value){var a=w(n.value.toString().split("-").map((function(e){return parseInt(e)})),3),r=a[0],l=a[1],p=a[2],s=new Date(r,l-1,p).toLocaleDateString("zh-Hans-CN",{year:"numeric",month:"2-digit",day:"2-digit"}).replace(/\//g,"-");t[n.name]=e.fb.control({value:new Date(s),disabled:n.disabled},n.require&&!n.hide?[o.Validators.required]:[])}else if(3===n.type&&n.value){var d=JSON.parse(JSON.stringify(n.value));if(!(d&&d instanceof Array))throw"form组件中DateRange控件value值格式不规范,正确示例['2020-01-22', '2020-01-23']";d=d.map((function(e){var t=w(e.split("-").map((function(e){return parseInt(e)})),3),n=t[0],o=t[1],i=t[2],a=new Date(n,o-1,i).toLocaleDateString("zh-Hans-CN",{year:"numeric",month:"2-digit",day:"2-digit"}).replace(/\//g,"-");e=new Date(a)})),t[n.name]=e.fb.control({value:d,disabled:n.disabled},n.require&&!n.hide?[o.Validators.required]:[])}else t[n.name]=e.fb.control({value:n.value,disabled:n.disabled},n.require&&!n.hide?[o.Validators.required]:[])})),this.validateHdForm=this.fb.group(t),this.formList.forEach((function(t){t.onChangeEvent&&t.onChangeEvent&&e.validateHdForm.get(t.name).valueChanges.subscribe((function(n){return e.triggerEvent(t.onChangeEvent,n)}))})),this.validateHdForm.valueChanges.subscribe((function(t){return e.onHdFormValueChanged(t)})),this.onHdFormValueChanged()},e.prototype.dealRow=function(){for(var e=this.formList.length,t=0,n=0;n<e;n++)if(!this.formList[n].hide)if(0===n)this.formList[n].totalWidth=this.formList[n].width||1,this.formList[n].isRowFirst=1,t+=4;else for(var o=n-1;o>=0;o--)if(this.formList[o].totalWidth){this.formList[n].totalWidth=this.formList[o].totalWidth+(this.formList[n].width||1),this.formList[o].totalWidth+this.formList[n].width>t&&this.formList[o].totalWidth<=t?(t+=4,this.formList[n].isRowFirst=1):this.formList[n].isRowFirst=0;break}for(var i=0;i<e;i++)if(1===this.formList[i].isRowFirst){this.formList[i].columnItems=[];for(var a=0,r=1;r<e-i&&(4!==a&&1!==this.formList[i+r].isRowFirst);r++)!this.formList[i+r].hide&&this.formList[i+r]&&0===this.formList[i+r].isRowFirst&&(this.formList[i].columnItems.push(this.formList[i+r]),a++)}},e.prototype.onHdFormValueChanged=function(e){this.changeEvent.emit(this.validateHdForm)},e.prototype.checkList=function(e){if(!e||e&&0===e.length)return!1;var t=[];if(e.forEach((function(e){t.push(e.name)})),y(new Set(t)).length!==e.length)throw"form组件数据格式不规范,存在重复name值!";return!0},e.prototype.submitForm=function(){Object.values(this.validateHdForm.controls).forEach((function(e){e.markAsDirty(),e.updateValueAndValidity()})),this.changeEvent.emit(this.validateHdForm.getRawValue())},e.prototype.resetForm=function(){this.validateHdForm.reset(),Object.values(this.validateHdForm.controls).forEach((function(e){e.markAsDirty(),e.updateValueAndValidity()})),this.changeEvent.emit(this.validateHdForm.getRawValue())},e.prototype.inputClean=function(e){var t={};t[e.name]=null,this.validateHdForm.patchValue(t)},e.decorators=[{type:t.Component,args:[{selector:"hd-form",template:'<form nz-form [formGroup]="validateHdForm" class="ant-advanced-search-form hd-formItem-container">\n \x3c!-- 整体结构 --\x3e\n <div nz-row [nzGutter]="24">\n \x3c!-- 对组件列表循环处理 --\x3e\n <ng-container *ngFor="let formItem of formList;index as i">\n <div nz-row *ngIf="formItem.isRowFirst && formItem.isRowFirst === 1">\n <div nz-col *ngIf="!formItem.hide" [nzSpan]="formItem.width? formItem.width * 6 : 6">\n <nz-form-item nzFlex>\n <nz-form-label class="hd-formItem-label" [nzNoColon]="true">\n <div class="hd-formItem-label-flex">\n <span>\n <span class="hd-formItem-label-require" *ngIf="formItem.require">*</span>\n <span\n [ngStyle]="{\'color\': formItem?.labelColor ? formItem.labelColor : null}">{{formItem.label}}</span>\n </span>\n <ng-container *ngIf="formItem.explain">\n <span class="hd-formItem-label-explain">{{formItem.explain}}</span>\n </ng-container>\n </div>\n </nz-form-label>\n <nz-form-control class="hd-formItem-control" [nzErrorTip]="formItem.label + \'不能为空\'">\n <ng-container [ngSwitch]="formItem.type">\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input nz-input [ngStyle]="{\'color\': formItem?.color ? formItem.color : null}"\n [maxlength]="formItem.maxLength || null"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label"\n [formControlName]="formItem.name" />\n </nz-input-group>\n <ng-template #inputCleanTemplate><i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill"\n nzType="close-circle" *ngIf="validateHdForm.get(formItem.name).value && !formItem.disabled"\n (click)="inputClean(formItem)"></i></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select nzShowSearch [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzAllowClear [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of formItem.selectOption.selectList"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]"></nz-option>\n <nz-option *ngIf="formItem.defaultLabel" [nzLabel]="formItem.defaultLabel"\n [nzValue]="formItem.value" nzHide></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="!formItem.showTime" [nzDisabledDate]="formItem.hdDisabledDate"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name">\n </nz-date-picker>\n <nz-date-picker *ngIf="formItem.showTime" [nzDisabledDate]="formItem.hdDisabledDate"\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name" nzShowTime nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="formItem.name">\n </nz-range-picker>\n </ng-container>\n <ng-container *ngSwitchCase="4">\n <textarea [ngStyle]="{\'color\': formItem?.color ? formItem.color : null}"\n [rows]="formItem.textAreaRows ? formItem.textAreaRows : 1"\n [placeholder]="formItem.placeholder ? formItem.placeholder : \'请输入\' + formItem.label" rows="1"\n nz-input [maxlength]="formItem.maxLength || null" [formControlName]="formItem.name"></textarea>\n </ng-container>\n <ng-container *ngSwitchCase="5">\n <nz-input-number [ngStyle]="{\'color\': formItem?.color ? formItem.color : null}"\n [formControlName]="formItem.name" [nzMin]="formItem?.inputNumber?.min || 0"\n [nzMax]="formItem?.inputNumber?.max || 99999999" [nzStep]="formItem?.inputNumber?.step || 1"\n [nzPlaceHolder]="\'请输入\' + formItem.label"></nz-input-number>\n </ng-container>\n \x3c!-- 多项选择器 --\x3e\n <ng-container *ngSwitchCase="6">\n <nz-select [nzServerSearch]="formItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="formItem.selectOption.hdDropdownMatchSelectWidth ? formItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzMode="multiple" nzShowSearch nzAllowClear\n [nzPlaceHolder]="formItem.placeholder ? formItem.placeholder : \'请选择\' + formItem.label"\n [formControlName]="formItem.name"\n (nzOnSearch)="triggerEvent(formItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of formItem.selectOption.selectList"\n [nzValue]="selectItem[formItem.selectOption.value]" [nzLabel]="formItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[formItem.selectOption.value] +\']\' +\n selectItem[formItem.selectOption.label] : selectItem[formItem.selectOption.label]"></nz-option>\n <ng-container *ngIf="formItem.defaultLabel">\n <nz-option *ngFor="let option of formItem.defaultLabel;index as i" [nzLabel]="option"\n [nzValue]="formItem.value[i]" nzHide></nz-option>\n </ng-container>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="7">\n <span>{{formItem.value || validateHdForm.get(formItem.name).value}}</span>\n </ng-container>\n <ng-container *ngSwitchCase="8">\n <nz-switch [formControlName]="formItem.name"></nz-switch>\n </ng-container>\n <ng-container *ngSwitchCase="9">\n <nz-time-picker [formControlName]="formItem.name"></nz-time-picker>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n </div>\n \x3c!-- 循环最多四次 --\x3e\n <ng-container *ngFor="let columnItem of formItem.columnItems;index as columnItemIndex">\n <div nz-col *ngIf="!columnItem.hide" [nzSpan]="columnItem.width? columnItem.width * 6 : 6">\n <nz-form-item nzFlex>\n <nz-form-label class="hd-formItem-label" [nzNoColon]="true">\n <div class="hd-formItem-label-flex">\n <span>\n <span class="hd-formItem-label-require" *ngIf="columnItem.require">*</span>\n <span\n [ngStyle]="{\'color\': columnItem?.labelColor ? columnItem.labelColor : null}">{{columnItem.label}}</span>\n </span>\n <ng-container *ngIf="columnItem.explain">\n <span class="hd-formItem-label-explain">{{columnItem.explain}}</span>\n </ng-container>\n </div>\n </nz-form-label>\n <nz-form-control class="hd-formItem-control" [nzErrorTip]="columnItem.label + \'不能为空\'">\n <ng-container [ngSwitch]="columnItem.type">\n <ng-container *ngSwitchCase="0">\n <nz-input-group [nzSuffix]="inputCleanTemplate">\n <input *ngIf="columnItem.disabled === true;else inputTemplate" nz-input\n [ngStyle]="{\'color\': columnItem?.color ? columnItem.color : null}" [disabled]="true"\n [attr.disabled]="true" [maxlength]="columnItem.maxLength || null"\n [placeholder]="columnItem.placeholder ? columnItem.placeholder : \'请输入\' + columnItem.label"\n [formControlName]="columnItem.name" />\n <ng-template #inputTemplate>\n <input nz-input [ngStyle]="{\'color\': columnItem?.color ? formItem.color : null}"\n [maxlength]="columnItem.maxLength || null"\n [placeholder]="columnItem.placeholder ? columnItem.placeholder : \'请输入\' + columnItem.label"\n [formControlName]="columnItem.name" />\n </ng-template>\n </nz-input-group>\n <ng-template #inputCleanTemplate><i nz-icon nz-tooltip class="ant-input-clear-icon" nzTheme="fill"\n nzType="close-circle" *ngIf="validateHdForm.get(columnItem.name).value && !columnItem.disabled"\n (click)="inputClean(columnItem)"></i></ng-template>\n </ng-container>\n <ng-container *ngSwitchCase="1">\n <nz-select [nzServerSearch]="columnItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="columnItem.selectOption.hdDropdownMatchSelectWidth ? columnItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzShowSearch nzAllowClear\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name"\n (nzOnSearch)="triggerEvent(columnItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of columnItem.selectOption.selectList"\n [nzValue]="selectItem[columnItem.selectOption.value]" [nzLabel]="columnItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[columnItem.selectOption.value] +\']\' +\n selectItem[columnItem.selectOption.label] : selectItem[columnItem.selectOption.label]">\n </nz-option>\n <nz-option *ngIf="columnItem.defaultLabel" [nzLabel]="columnItem.defaultLabel"\n [nzValue]="columnItem.value" nzHide></nz-option>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="2">\n <nz-date-picker *ngIf="columnItem.showTime" [nzDisabledDate]="columnItem.hdDisabledDate"\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name" nzShowTime nzFormat="yyyy-MM-dd HH:mm:ss">\n </nz-date-picker>\n <nz-date-picker *ngIf="!columnItem.showTime" [nzDisabledDate]="columnItem.hdDisabledDate"\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name">\n </nz-date-picker>\n </ng-container>\n <ng-container *ngSwitchCase="3">\n <nz-range-picker [nzPlaceHolder]="[\'开始日期\',\'结束日期\']" [formControlName]="columnItem.name">\n </nz-range-picker>\n </ng-container>\n <ng-container *ngSwitchCase="4">\n <textarea [ngStyle]="{\'color\': columnItem?.color ? columnItem.color : null}"\n [rows]="columnItem.textAreaRows ? columnItem.textAreaRows : 1" rows="1" nz-input\n [maxlength]="columnItem.maxLength || null" [formControlName]="columnItem.name"></textarea>\n </ng-container>\n <ng-container *ngSwitchCase="5">\n <nz-input-number [ngStyle]="{\'color\': columnItem?.color ? columnItem.color : null}"\n [formControlName]="columnItem.name" [nzMin]="columnItem?.inputNumber?.min || 0"\n [nzMax]="columnItem?.inputNumber?.max || 99999999" [nzStep]="columnItem?.inputNumber?.step || 1"\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请输入\' + columnItem.label">\n </nz-input-number>\n </ng-container>\n \x3c!-- 多项选择器 --\x3e\n <ng-container *ngSwitchCase="6">\n <nz-select [nzServerSearch]="columnItem.selectOption.hdServerSearch || false"\n [nzDropdownMatchSelectWidth]="columnItem.selectOption.hdDropdownMatchSelectWidth ? columnItem.selectOption.hdDropdownMatchSelectWidth : false"\n nzMode="multiple" nzShowSearch nzAllowClear\n [nzPlaceHolder]="columnItem.placeholder ? columnItem.placeholder : \'请选择\' + columnItem.label"\n [formControlName]="columnItem.name"\n (nzOnSearch)="triggerEvent(columnItem.onSearchEvent || null, $event)">\n <nz-option *ngFor="let selectItem of columnItem.selectOption.selectList"\n [nzValue]="selectItem[columnItem.selectOption.value]" [nzLabel]="columnItem.selectOption.showLabelAndValue ? \'[\'+ selectItem[columnItem.selectOption.value] +\']\' +\n selectItem[columnItem.selectOption.label] : selectItem[columnItem.selectOption.label]">\n </nz-option>\n <ng-container *ngIf="columnItem.defaultLabel">\n <nz-option *ngFor="let option of columnItem.defaultLabel;index as i" [nzLabel]="option"\n [nzValue]="columnItem.value[i]" nzHide></nz-option>\n </ng-container>\n </nz-select>\n </ng-container>\n <ng-container *ngSwitchCase="7">\n <span>{{columnItem.value || validateHdForm.get(columnItem.name).value}}</span>\n </ng-container>\n <ng-container *ngSwitchCase="8">\n <nz-switch [formControlName]="columnItem.name"></nz-switch>\n </ng-container>\n <ng-container *ngSwitchCase="9">\n <nz-time-picker [formControlName]="columnItem.name"></nz-time-picker>\n </ng-container>\n </ng-container>\n </nz-form-control>\n </nz-form-item>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n</form>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-formItem-container .hd-formItem-label{width:108px;word-break:break-all;text-align:right}.hd-formItem-container .hd-formItem-control{width:calc(100% - 108px)}.hd-formItem-container .ant-input-number{width:100%}.hd-formItem-container .hd-formItem-label-flex{display:inline-flex;flex-direction:column}.hd-formItem-container .hd-formItem-label-flex span{display:inline-block}.hd-formItem-container .hd-formItem-label-flex .hd-formItem-label-require{margin-right:4px;color:#f5222d;font-size:12px;font-family:SimSun,sans-serif}.hd-formItem-container .hd-formItem-label-flex .hd-formItem-label-explain{margin-top:-13px;color:#f5222d}.hd-formItem-container textarea{margin-top:8px}"]}]}],e.ctorParameters=function(){return[{type:o.FormBuilder}]},e.propDecorators={formList:[{type:t.Input}],changeEvent:[{type:t.Output}]},e}();var K=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,o.FormsModule,o.ReactiveFormsModule,i.NgZorroAntdModule,F],declarations:[U],exports:[U]}]}],e}(),X=function(){function e(){this.scroll={x:"1px"},this.showSelected=!1,this.selectField="billNumber",this.showTableTotal=!1,this.selectEvent=new t.EventEmitter,this.tableSearchEvent=new t.EventEmitter,this.tableLoading=!1,this.tablePageIndex=1,this.tablePageSize=10,this.tablePageIndexChange=new t.EventEmitter,this.tablePageSizeChange=new t.EventEmitter,this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.listOfDisplayData=[],this.listOfAllData=[],this.mapOfCheckedId={},this.mapOfCheckList={},this.tableTotalOptionList=[]}return e.prototype.ngOnInit=function(){},e.prototype.ngOnChanges=function(e){if(e&&e.tableData&&e.tableData.currentValue&&e.tableData.previousValue){if(e.tableData.currentValue.pageSize!==e.tableData.previousValue.pageSize||e.tableData.currentValue.pageNumber!==e.tableData.previousValue.pageNumber)return;this.resetStatus()}},e.prototype.currentPageDataChange=function(e){this.listOfDisplayData=e,this.refreshStatus(),this.resetStatus()},e.prototype.search=function(e){e?this.tablePageSizeChange.emit(this.tablePageSize):this.tablePageIndexChange.emit(this.tablePageIndex),this.tableSearchEvent.emit(e)},e.prototype.resetStatus=function(){this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.mapOfCheckedId={},this.mapOfCheckList={},this.selectEvent.emit([])},e.prototype.refreshStatus=function(e,t){var n=this;if(void 0===e&&(e=!1),void 0===t&&(t=null),e&&t?!this.mapOfCheckList[t[this.selectField]]&&(this.mapOfCheckList[t[this.selectField]]=t):!e&&t&&this.mapOfCheckList[t[this.selectField]]&&delete this.mapOfCheckList[t[this.selectField]],this.isAllDisplayDataChecked=this.listOfDisplayData.every((function(e){return n.mapOfCheckedId[e[n.selectField]]})),this.isIndeterminate=this.listOfDisplayData.some((function(e){return n.mapOfCheckedId[e[n.selectField]]}))&&!this.isAllDisplayDataChecked,this.selectEvent){var o=Object.values(this.mapOfCheckList);this.selectEvent.emit(o)}0===this.tableData.content.length&&(this.isAllDisplayDataChecked=!1)},e.prototype.checkAll=function(e){var t=this;this.listOfDisplayData.forEach((function(n){e?!t.mapOfCheckList[n[t.selectField]]&&(t.mapOfCheckList[n[t.selectField]]=n):t.mapOfCheckList[n[t.selectField]]&&delete t.mapOfCheckList[n[t.selectField]],t.mapOfCheckedId[n[t.selectField]]=e})),this.refreshStatus()},e.decorators=[{type:t.Component,args:[{selector:"hd-current-table",template:'<ng-container>\n <ng-container *ngTemplateOutlet="tableTotal"></ng-container>\n <hd-space *ngIf="tableTotal" type="row" size="12"></hd-space>\n <nz-table #hdTable class="hd-table-container" [nzScroll]="scroll" nzShowSizeChanger nzShowSizeChanger nzShowQuickJumper nzFrontPagination="false" nzSize="middle"\n [nzData]="tableData.content" [nzTotal]="tableData.totalElements" [(nzPageIndex)]="tablePageIndex"\n [nzLoading]="tableLoading" [(nzPageSize)]="tablePageSize" (nzPageSizeChange)="search(true)"\n (nzPageIndexChange)="search(false)" (nzCurrentPageDataChange)="showSelected ? currentPageDataChange($event) : null"\n [nzShowTotal]="tableTotalTemplate">\n <thead>\n <tr>\n <th nzWidth="40px" nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="isAllDisplayDataChecked" [nzIndeterminate]="isIndeterminate"\n (nzCheckedChange)="checkAll($event)"></th>\n <ng-container *ngTemplateOutlet="tableHead"></ng-container>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor="let data of hdTable.data;index as i">\n <td nzWidth="40px" nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="mapOfCheckedId[data[selectField]]" (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngTemplateOutlet="tableBody;context:{$implicit: data, index: i}"></ng-container>\n </tr>\n \x3c!-- 合计所有数据区域 需要后端接口配合 --\x3e\n <tr *ngIf="showTableTotal" class="hd-table-total">\n <td>合计</td>\n <ng-container *ngFor="let tableTotalOption of tableTotalOptionList">\n <td>{{ tableTotalOption }}</td>\n </ng-container>\n </tr>\n </tbody>\n <ng-template #tableTotalTemplate>\n 共 {{tableData.totalElements}} 条数据\n </ng-template>\n </nz-table>\n</ng-container>\n',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-table-container ::ng-deep .ant-pagination-options-quick-jumper input{border-radius:2px;border:1px solid #d9d9d9}.hd-table-container ::ng-deep .ant-pagination-options .ant-select-selection{border-radius:2px}.hd-table-container ::ng-deep .ant-table-thead>tr>th{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .ant-table-tbody>tr>td{border-bottom:1px solid #ecf1ed}.hd-table-container ::ng-deep .hd-table-total>td{border:0!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={tableData:[{type:t.Input}],scroll:[{type:t.Input}],showSelected:[{type:t.Input}],selectField:[{type:t.Input}],showTableTotal:[{type:t.Input}],tableTotalOption:[{type:t.Input}],selectEvent:[{type:t.Output}],tableSearchEvent:[{type:t.Output}],tableHead:[{type:t.ContentChild,args:["tableHead",{static:!1}]}],tableBody:[{type:t.ContentChild,args:["tableBody",{static:!1}]}],tableTotal:[{type:t.ContentChild,args:["tableTotal",{static:!1}]}],tableLoading:[{type:t.Input}],tablePageIndex:[{type:t.Input}],tablePageSize:[{type:t.Input}],tablePageIndexChange:[{type:t.Output}],tablePageSizeChange:[{type:t.Output}]},z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSelected",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTableTotal",void 0),e}();var Y=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,p.NzTableModule,G],declarations:[X],exports:[X],schemas:[t.NO_ERRORS_SCHEMA]}]}],e}(),ee=function(){function e(){}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-log",template:'<hd-detail-lines [scroll]="{x: \'1px\'}" [lines]="logs" hdFrontPagination="true">\n <ng-template #detailLineHead>\n <th>时间</th>\n <th>操作人</th>\n <th>事件</th>\n <th>描述</th>\n </ng-template>\n <ng-template #detailLineBody let-data let-index="index">\n <td>{{data.createInfo.operateTime}}</td>\n <td>{{data.createInfo.operatorName}}</td>\n <td>{{data.event}}</td>\n <td>{{data.describe}}</td>\n </ng-template>\n</hd-detail-lines>',styles:[""]}]}],e.ctorParameters=function(){return[]},e.propDecorators={logs:[{type:t.Input}]},e}();var te=function(){function e(e){this.modalService=e}return e.prototype.showLogs=function(e){this.modalService.create({nzTitle:"操作日志",nzContent:ee,nzComponentParams:{logs:e},nzFooter:null,nzWidth:800})},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:i.NzModalService}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(s.NzModalService))},token:e,providedIn:"root"}),e}();var ne=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,i.NgZorroAntdModule,H],entryComponents:[ee],declarations:[ee],exports:[ee],providers:[te]}]}],e}(),oe=function(){function e(){this.confirmOption=new t.EventEmitter,this.cancelOption=new t.EventEmitter}return e.prototype.ngOnInit=function(){},e.prototype.cancel=function(e){this.cancelOption.emit()},e.prototype.confirm=function(e){this.confirmOption.emit()},e.decorators=[{type:t.Component,args:[{selector:"hd-popconfirm",template:'<div class="popconfirm-content">\n <div class="popconfirm-arrow"></div>\n\n <div class="popconfirm-inner">\n <div class="message-content">\n <svg class="icon-warn" viewBox="64 64 896 896" fill="currentColor" width="1em" height="1em" data-icon="exclamation-circle" aria-hidden="true"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z"></path></svg>\n <p style="text-indent: 18px">{{message}}</p>\n </div>\n\n \x3c!-- 按钮提示 --\x3e\n <div class="btn-content">\n <button type="button" (click)="cancel($event)" nz-button nzType="default">取消</button>\n <button type="button" (click)="confirm($event)" nz-button nzType="primary">确认</button>\n </div>\n </div>\n</div>\n',styles:[".popconfirm-content{position:relative}.popconfirm-arrow{position:absolute;top:15px;left:-4px;display:block;width:8.5px;height:8.5px;background:0 0;border-style:solid;border-width:4.24264069px;transform:rotate(45deg);right:6px;box-shadow:-3px 3px 7px rgba(0,0,0,.07);border-color:transparent transparent #fff #fff}.popconfirm-inner{min-width:158px;background-color:#fff;padding:12px 16px;box-sizing:border-box;line-height:1.5;box-shadow:0 2px 8px rgba(0,0,0,.15);border-radius:4px;text-align:left}.message-content{position:relative}.icon-warn{color:#faad14;position:absolute;top:4px;font-size:14px}.btn-content{width:100%;text-align:right}:host ::ng-deep .btn-content>button{padding:0 7px!important;margin-left:8px!important;font-size:14px!important}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={message:[{type:t.Input}],confirmOption:[{type:t.Output}],cancelOption:[{type:t.Output}]},e}();var ie=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[oe],imports:[o.FormsModule,o.ReactiveFormsModule,n.CommonModule,i.NgZorroAntdModule],exports:[oe],providers:[],bootstrap:[oe]}]}],e}(),ae=function(){function e(){}return e.prototype.ngOnInit=function(){this.setStatusColor()},e.prototype.ngOnChanges=function(){this.setStatusColor()},e.prototype.setStatusColor=function(){for(var e in R)if(-1!==R[e].indexOf(this.status)){this.statusColor=e;break}},e.decorators=[{type:t.Component,args:[{selector:"hd-status",template:'<ng-container>\n <div class="hd-status">\n <div class="hd-status-dot" [ngStyle]="{\'background\': statusColor || \'#9FA4A2\'}"></div>\n <div class="hd-status-text">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-container>\n',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-status{display:flex;justify-content:flex-start;align-items:center}.hd-status-dot{width:6px;height:6px;border-radius:50%;margin-right:6px}.hd-status-text{color:#2a3634;font-size:12px}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={status:[{type:t.Input}]},e}();var re=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[ae],imports:[o.FormsModule,o.ReactiveFormsModule,n.CommonModule,i.NgZorroAntdModule],exports:[ae],providers:[],bootstrap:[ae]}]}],e}(),le=function(){function e(){}return e.prototype.putSession=function(e,t){t?window.sessionStorage.setItem(e,JSON.stringify(t)):window.sessionStorage.removeItem(e)},e.prototype.getSession=function(e){return JSON.parse(window.sessionStorage.getItem(e))},e.prototype.removeSession=function(e){window.sessionStorage.removeItem(e)},e.decorators=[{type:t.Injectable}],e}(),pe={billNumberColWidth:150,nameColWidth:150,codeColWidth:100,codeNameColWidth:200,enumColWidth:100,dateColWidth:100,dateTimeColWidth:150,dateRangeWidth:200,operateColWidth:150,numberColWidth:100,remarkColwidth:250,fixColWidth:150},se=function(){this.name=null,this.align="left",this.fixed=null,this.btnList=[],this.isShow=!0};var de=function(){this.showConfirm=!1};var ce=function(){};var he=function(){};var me=function(){this.title="",this.key="",this.disabled=!1,this.checked=!1,this.selectable=!1,this.isLeaf=!0,this.expanded=!1};var ge=function(){function e(e){var n=this;this.commonSessionService=e,this.tableCols=[],this.showSelected=!1,this.selectField="billNumber",this.showTableTotal=!1,this.selectEvent=new t.EventEmitter,this.tableSearchEvent=new t.EventEmitter,this.tableLoading=!1,this.tablePageIndex=1,this.tablePageIndexChange=new t.EventEmitter,this.tablePageSizeChange=new t.EventEmitter,this.scroll=null,this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.listOfDisplayData=[],this.listOfAllData=[],this.mapOfCheckedId={},this.mapOfCheckList={},this.tableTotalOptionList=[],this.textWidthCache={},this.tableCacheOption=new he,this.tableColsCache=[],this.showTable=!1,this.selectColListNodes=[],this.selectColListNodesCache=[],this.showListNodes=!1,this.isDropdownVisible=!1,this.nowListNodes=[],this.hideListNodes=[],this.cancelNowListNodes=[],this.cancelHideListNodes=[],this.beforeDrop=function(e){if(e.node.origin.disabled||!e.dragNode.origin.checked)return f.of(!1);var t=new me;t.checked=e.dragNode.origin.checked,t.disabled=e.dragNode.origin.disabled,t.expanded=e.dragNode.origin.expanded,t.isLeaf=e.dragNode.origin.isLeaf,t.key=e.dragNode.origin.key,t.selectable=e.dragNode.origin.selectable,t.title=e.dragNode.origin.title;var o=n.nowListNodes.findIndex((function(t){return t.title==e.dragNode.origin.title})),i=n.nowListNodes.findIndex((function(t){return t.title==e.node.origin.title}))+(-1===e.pos?0:e.pos);return n.nowListNodes.splice(i,0,t),n.nowListNodes.splice(i>=o?o:o+1,1),f.of(!0).pipe(b.delay(100))}}return e.prototype.ngOnInit=function(){this.userSession=this.commonSessionService.getSession("__jy_authorization_session__"),this.userSession||(this.userSession={userCode:"dev"}),this.getInitLocalforage()},e.prototype.getInitLocalforage=function(){var e=this;u.getItem("hd-table_"+this.userSession.userCode+"_"+this.uuid).then((function(t){e.tableCacheOption=t,e.tableCacheOption.pageSize&&e.tableCacheOption.pageSize>10?(e.tablePageSize=e.tableCacheOption.pageSize,e.tablePageSizeChange.emit(e.tablePageSize)):e.tablePageSize=e.tableCacheOption.pageSize||10,e.tableCacheOption.colWidths||(e.tableCacheOption.colWidths=new Map),e.initTable()})).catch((function(t){e.tableCacheOption=new he,e.tablePageSize=10,e.tableCacheOption.pageSize=10,e.tableCacheOption.colWidths=new Map,e.initTable()}))},e.prototype.initTable=function(){if(this.showTable=!1,!this.uuid)throw"hd-table缺失uuid参数,请使用编辑器插件生成并给hd-table赋予uuid属性";this.judgeRepeatCols()&&(this.dealCols(),this.setCols(),this.dealScroll(),this.dealOperateBtn(),this.showTable=!0)},e.prototype.cancelDropdown=function(){this.isDropdownVisible=!1,this.hideListNodes=JSON.parse(JSON.stringify(this.cancelHideListNodes)),this.nowListNodes=JSON.parse(JSON.stringify(this.cancelNowListNodes))},e.prototype.confirmDropdown=function(){this.cancelHideListNodes=JSON.parse(JSON.stringify(this.hideListNodes)),this.cancelNowListNodes=JSON.parse(JSON.stringify(this.nowListNodes)),this.isDropdownVisible=!0},e.prototype.submitGrids=function(){var e=this;this.tableCacheOption.cols=[],this.nowListNodes.forEach((function(t){e.tableCacheOption.cols.push(t.title)})),this.saveTableCacheOption(),this.initTable(),this.isDropdownVisible=!1},e.prototype.setCols=function(){var e=this;if(this.showListNodes=!1,this.nowListNodes=[],this.hideListNodes=[],this.tableCacheOption.cols){var t=this.tableColsCache.reduce((function(t,n){return e.tableCacheOption.cols.includes(n.title)?t.incols.push(n):t.notIncols.push(n),t}),{notIncols:[],incols:[]}),n=t.notIncols,o=t.incols;o.sort((function(t,n){return e.tableCacheOption.cols.indexOf(t.title)-e.tableCacheOption.cols.indexOf(n.title)})),this.tableCols=o.concat(n)}this.tableCols.forEach((function(t,n){e.tableCacheOption.cols?(t.isShow=!!e.tableCacheOption.cols.includes(t.title),t.isShow?e.nowListNodes.push({title:t.title,key:t.title,disabled:!!t.fixed,selectable:!1,checked:!!e.tableCacheOption.cols.includes(t.title)}):e.hideListNodes.push({title:t.title,key:t.title,disabled:!!t.fixed,selectable:!1,checked:!!e.tableCacheOption.cols.includes(t.title)})):(t.isShow=!0,e.nowListNodes.push({title:t.title,key:t.title,checked:!0,selectable:!1,disabled:!!t.fixed}))})),this.tableCacheOption&&this.tableCacheOption.colWidths&&0!==this.tableCacheOption.colWidths.size&&this.tableCols.forEach((function(t){e.tableCacheOption.colWidths.has(t.title)&&(t.width=e.tableCacheOption.colWidths.get(t.title))})),this.dealCols(),setTimeout((function(){e.showListNodes=!0}),0)},e.prototype.moveElementNearby=function(e,t,n,o){var i=JSON.parse(JSON.stringify(e)),a=i.findIndex((function(e){return e.title===n})),r=i.findIndex((function(e){return e.title===t})),l=o<0?a+o:a,p=i.splice(r,1);return i.splice(l+1,0,p[0]),i},e.prototype.checkAction=function(e){if(e.node.origin.checked){var t=new me;(t=this.hideListNodes.find((function(t){return t.title===e.node.origin.title}))).checked=!0;for(var n=null,o=this.tableColsCache.length-1;o>=0;o--)if("right"===this.tableColsCache[o].fixed){n=this.tableColsCache[o].title;break}var i=this.nowListNodes.slice(0);if(n){var a=this.nowListNodes.findIndex((function(e){return e.title===n}));i.splice(a,0,t)}else i.push(t);this.nowListNodes=i,this.hideListNodes=this.hideListNodes.filter((function(t){return t.title!==e.node.origin.title}))}else{if(0===this.hideListNodes.length&&this.tableCacheOption&&this.tableCacheOption.cols)this.hideListNodes=this.getHideListNodes();else{var r=this.hideListNodes.slice(0);this.nowListNodes.forEach((function(t){t.title===e.node.origin.title&&(JSON.parse(JSON.stringify(t)).checked=!0,r.push(t))})),this.hideListNodes=r}this.nowListNodes=this.nowListNodes.filter((function(t){return t.title!==e.node.origin.title}))}},e.prototype.getHideListNodes=function(){var e=this,t=[];return this.tableColsCache.forEach((function(n){if(!e.tableCacheOption.cols.includes(n.title)){var o=new me;o.title=n.title,o.key=n.title,o.disabled=!!n.fixed,o.checked=!1,t.push(o)}})),t},e.prototype.dealCols=function(){var e=this.tableCols.filter((function(e){return"left"===e.fixed})),t=this.tableCols.filter((function(e){return"right"===e.fixed})),n=this.tableCols.filter((function(e){return!e.fixed})),o=e.concat(n).concat(t);this.tableCols=o,this.tableColsCache&&0!==this.tableColsCache.length||(this.tableColsCache=y(this.tableCols))},e.prototype.saveTableCacheOption=function(){u.setItem("hd-table_"+this.userSession.userCode+"_"+this.uuid,this.tableCacheOption)},e.prototype.judgeRepeatCols=function(){for(var e=0;e<this.tableCols.length;e++)for(var t=e+1;t<this.tableCols.length;t++)if(this.tableCols[e].title===this.tableCols[t].title)throw"hd-table组件中列名 "+this.tableCols[e].title+" 重复";return!0},e.prototype.onResize=function(e,t){var n=e.width;this.tableCacheOption.colWidths.set(t,n),this.saveTableCacheOption(),this.tableCols=this.tableCols.map((function(e){return e.title===t?x({},e,{width:n}):e}))},e.prototype.dealOperateBtn=function(){var e=this.tableCols.find((function(e){return"操作"===e.title}))||null;if(e){var t="";e.btnList.forEach((function(e){t+=e.name}));var n=document.createElement("a");n.style.visibility="hidden",n.style.position="absolute",n.style.whiteSpace="nowrap",n.style.fontSize="12px",n.style.display="inline-block",n.innerText=t,document.body.appendChild(n),e.width=n.offsetWidth+4*(e.btnList.length-1)+16,n.style.display="none",document.body.removeChild(n)}},e.prototype.triggerEvent=function(e,t){e&&e(t)},e.prototype.dealScroll=function(){var e=0;this.showSelected&&(e+=40),this.tableCols.forEach((function(t){t.width||(t.width=pe.fixColWidth),t.isShow&&(t.fixedWidth=e,e+=t.width)})),this.scroll={x:"1px",y:"calc(100vh - 140px)"}},e.prototype.isTextOverflow=function(e,t){var n=this.textWidthCache[e];if(void 0!==n)return n+15>=t;var o=document.createElement("span");o.style.visibility="hidden",o.style.position="absolute",o.style.whiteSpace="nowrap",o.style.fontSize="12px",o.style.display="inline-block",o.innerText=e,document.body.appendChild(o);var i=o.offsetWidth+15>=t;return this.textWidthCache[e]=o.offsetWidth,o.style.display="none",document.body.removeChild(o),i},e.prototype.ngOnChanges=function(e){if(e&&e.tableData&&e.tableData.currentValue&&e.tableData.previousValue){if(e.tableData.currentValue.pageSize!==e.tableData.previousValue.pageSize||e.tableData.currentValue.pageNumber!==e.tableData.previousValue.pageNumber)return;this.resetStatus()}},e.prototype.currentPageDataChange=function(e){this.listOfDisplayData=e,this.refreshStatus(),this.resetStatus()},e.prototype.search=function(e){this.tableCacheOption.pageSize=this.tablePageSize,this.saveTableCacheOption(),e?this.tablePageSizeChange.emit(this.tablePageSize):this.tablePageIndexChange.emit(this.tablePageIndex),this.tableSearchEvent.emit(e)},e.prototype.resetStatus=function(){this.isAllDisplayDataChecked=!1,this.isIndeterminate=!1,this.mapOfCheckedId={},this.mapOfCheckList={},this.selectEvent.emit([])},e.prototype.refreshStatus=function(e,t){var n=this;if(void 0===e&&(e=!1),void 0===t&&(t=null),e&&t?!this.mapOfCheckList[t[this.selectField]]&&(this.mapOfCheckList[t[this.selectField]]=t):!e&&t&&this.mapOfCheckList[t[this.selectField]]&&delete this.mapOfCheckList[t[this.selectField]],this.isAllDisplayDataChecked=this.listOfDisplayData.every((function(e){return n.mapOfCheckedId[e[n.selectField]]})),this.isIndeterminate=this.listOfDisplayData.some((function(e){return n.mapOfCheckedId[e[n.selectField]]}))&&!this.isAllDisplayDataChecked,this.selectEvent){var o=Object.values(this.mapOfCheckList);this.selectEvent.emit(o)}0===this.tableData.content.length&&(this.isAllDisplayDataChecked=!1)},e.prototype.checkAll=function(e){var t=this;this.listOfDisplayData.forEach((function(n){e?!t.mapOfCheckList[n[t.selectField]]&&(t.mapOfCheckList[n[t.selectField]]=n):t.mapOfCheckList[n[t.selectField]]&&delete t.mapOfCheckList[n[t.selectField]],t.mapOfCheckedId[n[t.selectField]]=e})),this.refreshStatus()},e.decorators=[{type:t.Component,args:[{selector:"hd-table",template:'<ng-container>\n <hd-button-group>\n <ng-template #buttonGroupLeft>\n <ng-container *ngTemplateOutlet="tableLeftButton"></ng-container>\n </ng-template>\n <ng-template #buttonGroupRight>\n <ng-container *ngTemplateOutlet="tableRightButton"></ng-container>\n <hd-button type="primary" nz-dropdown nzTrigger="click" [nzDropdownMenu]="menu" (clickAction)="confirmDropdown()"\n [nzVisible]="isDropdownVisible">设置列</hd-button>\n <nz-dropdown-menu #menu="nzDropdownMenu">\n <div style="max-height: 400px;overflow-y: scroll;">\n <div nz-menu style="padding: 5px 10px;">\n <nz-tree *ngIf="showListNodes" [nzData]="nowListNodes" nzCheckable nzDraggable nzBlockNode\n nzShowExpand="false" (nzCheckBoxChange)="checkAction($event)" [nzBeforeDrop]="beforeDrop">\n </nz-tree>\n </div>\n <div *ngIf="showListNodes && hideListNodes.length > 0" nz-menu style="padding: 5px 10px;">\n <nz-tree *ngIf="showListNodes" [nzData]="hideListNodes" nzCheckable nzShowExpand="false"\n (nzCheckBoxChange)="checkAction($event)">\n </nz-tree>\n </div>\n </div>\n <div style="text-align: right;background: #fff;padding: 4px;">\n <hd-button style="margin-right: 4px;" type="default" size="small" (clickAction)="cancelDropdown()">取消\n </hd-button>\n <hd-button type="primary" size="small" (clickAction)="submitGrids()">完成</hd-button>\n </div>\n </nz-dropdown-menu>\n </ng-template>\n </hd-button-group>\n <hd-space type="row" size="12"></hd-space>\n <ng-container *ngTemplateOutlet="tableTotal"></ng-container>\n <hd-space *ngIf="tableTotal" type="row" size="12"></hd-space>\n <nz-table *ngIf="showTable" #hdTable class="hd-table-container" [nzScroll]="scroll" nzShowSizeChanger\n nzShowSizeChanger nzShowQuickJumper nzFrontPagination="false" nzSize="middle" [nzData]="tableData.content"\n [nzTotal]="tableData.totalElements" [(nzPageIndex)]="tablePageIndex" [nzLoading]="tableLoading"\n [nzPageSizeOptions]="[ 10, 50, 100, 200 ]" [(nzPageSize)]="tablePageSize" (nzPageSizeChange)="search(true)"\n (nzPageIndexChange)="search(false)" (nzCurrentPageDataChange)="showSelected ? currentPageDataChange($event) : null"\n [nzShowTotal]="tableTotalTemplate">\n <thead>\n <tr>\n <th nzWidth="40px" nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="isAllDisplayDataChecked"\n [nzIndeterminate]="isIndeterminate" (nzCheckedChange)="checkAll($event)"></th>\n <ng-container *ngFor="let col of tableCols">\n <th *ngIf="col.isShow" [nzWidth]="col.width + \'px\'" [nzAlign]="col.align"\n [nzLeft]="col.fixed === \'left\' ? col.fixedWidth + \'px\' : null"\n [nzRight]="col.fixed === \'right\' ? 0 + \'px\' : null" nz-resizable nzBounds="window"\n (nzResizeEnd)="onResize($event, col.title)">\n {{ col.title }}\n <nz-resize-handle nzDirection="right">\n <div class="resize-trigger"></div>\n </nz-resize-handle>\n </th>\n </ng-container>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor="let data of hdTable.data;index as i">\n <td nzLeft="0px" *ngIf="showSelected" nzShowCheckbox [(nzChecked)]="mapOfCheckedId[data[selectField]]"\n (nzCheckedChange)="refreshStatus($event, data)"></td>\n <ng-container *ngFor="let col of tableCols">\n <td *ngIf="col.isShow" [ngStyle]="{\'max-width\': col.width + \'px\'}" [nzAlign]="col.align"\n [nzLeft]="col.fixed === \'left\' ? col.fixedWidth + \'px\' : null"\n [nzRight]="col.fixed === \'right\' ? 0 + \'px\' : null">\n <ng-container *ngIf="col.title === \'操作\';else notOperateTemplate">\n <div class="common-btn-group">\n <ng-container *ngFor="let btn of col.btnList">\n <ng-container *ngIf="!btn.showConfirm;else showConfirmTemplate">\n <a *ngIf="btn.permission ? btn.permission(data) : true"\n [class]="btn.name === \'删除\' ? \'common-danger-btn\': \'\'"\n (click)="triggerEvent(btn.click || null, data)">{{ btn.name }}</a>\n </ng-container>\n <ng-template #showConfirmTemplate>\n <a *ngIf="btn.permission ? btn.permission(data) : true"\n [class]="btn.name === \'删除\' ? \'common-danger-btn\': \'\'" nz-popconfirm\n [nzPopconfirmTitle]="\'确认要\' + btn.name + \'吗?\'"\n (nzOnConfirm)="triggerEvent(btn.click || null, data)">{{\n btn.name }}</a>\n </ng-template>\n </ng-container>\n </div>\n </ng-container>\n <ng-template #notOperateTemplate>\n <ng-container *ngIf="col.name === \'state\';else otherTemplate">\n <hd-status [status]="data[\'state\']">{{ col.render ? col.render(data) : data[\'state\'] }}\n </hd-status>\n </ng-container>\n <ng-template #otherTemplate>\n <ng-container *ngIf="col.click;else noClickTemplate">\n <ng-container\n *ngIf="!isTextOverflow(col.render ? col.render(data) : data[col.name], col.width);else overflowTemplate">\n <a [ngStyle]="{\'color\': col?.color ? col.color : null}"\n (click)="triggerEvent(col.click || null, data)">{{ col.render ? col.render(data) :\n data[col.name]}}</a>\n </ng-container>\n <ng-template #overflowTemplate>\n <a [ngStyle]="{\'color\': col?.color ? col.color : null}" nz-tooltip\n [nzTooltipTitle]="col.render ? col.render(data) : data[col.name]"\n (click)="triggerEvent(col.click || null, data)">{{ col.render ? col.render(data) :\n data[col.name]}}</a>\n </ng-template>\n </ng-container>\n <ng-template #noClickTemplate>\n <ng-container\n *ngIf="!isTextOverflow(col.render ? col.render(data) : data[col.name], col.width);else overflowTemplate">\n <span [ngStyle]="{\'color\': col?.color ? col.color : null}">{{ col.render ? col.render(data) :\n data[col.name]}}</span>\n </ng-container>\n <ng-template #overflowTemplate>\n <span [ngStyle]="{\'color\': col?.color ? col.color : null}" nz-tooltip\n [nzTooltipTitle]="col.render ? col.render(data) : data[col.name]">\n {{ col.render ? col.render(data) : data[col.name]}}</span>\n </ng-template>\n </ng-template>\n </ng-template>\n </ng-template>\n </td>\n </ng-container>\n </tr>\n \x3c!-- 合计所有数据区域 需要后端接口配合 --\x3e\n <tr *ngIf="showTableTotal" class="hd-table-total">\n <td>合计</td>\n <ng-container *ngFor="let tableTotalOption of tableTotalOptionList">\n <td>{{ tableTotalOption }}</td>\n </ng-container>\n </tr>\n </tbody>\n <ng-template #tableTotalTemplate>\n 共 {{tableData.totalElements}} 条数据\n </ng-template>\n </nz-table>\n</ng-container>',styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset;padding:0 6px!important}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.nz-resizable-preview{position:absolute;top:0;left:0;z-index:8;border:1px dashed #d1d1d1}.nz-resizable-handle{position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:9}.nz-resizable-handle-top{width:100%;height:10px;top:-5px;left:0}.nz-resizable-handle-right{width:10px;height:100%;top:0;right:-5px}.nz-resizable-handle-bottom{width:100%;height:10px;bottom:-5px;left:0}.nz-resizable-handle-left{width:10px;height:100%;top:0;left:-5px}.nz-resizable-handle-topRight{width:20px;height:20px;top:-5px;right:-5px;z-index:10}.nz-resizable-handle-bottomRight{width:20px;height:20px;right:-5px;bottom:-5px;z-index:10}.nz-resizable-handle-bottomLeft{width:20px;height:20px;bottom:-5px;left:-5px;z-index:10}.nz-resizable-handle-topLeft{width:20px;height:20px;top:-5px;left:-5px;z-index:10}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-bottom,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-top{cursor:row-resize}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-left,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-right{cursor:col-resize}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-bottomRight,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-topLeft{cursor:nwse-resize}.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-bottomLeft,.nz-resizable:not(.nz-resizable-resizing) .nz-resizable-handle-topRight{cursor:nesw-resize}.hd-table-container ::ng-deep .ant-pagination-options-quick-jumper input{border-radius:2px;border:1px solid #d9d9d9}.hd-table-container ::ng-deep .ant-pagination-options .ant-select-selection{border-radius:2px}.hd-table-container ::ng-deep .ant-table-thead>tr>th{border-bottom:1px solid #ecf1ed;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hd-table-container ::ng-deep .ant-table-tbody>tr>td{border-bottom:1px solid #ecf1ed;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hd-table-container ::ng-deep .hd-table-total>td{border:0!important}.resize-trigger{height:15px;background:#e8e8e8;position:absolute}.nz-resizable-preview{border-width:0 1px 0 0}::ng-deep .ant-dropdown-menu{border-radius:0}::ng-deep .ant-dropdown{margin-top:8px!important}"]}]}],e.ctorParameters=function(){return[{type:le}]},e.propDecorators={uuid:[{type:t.Input}],tableCols:[{type:t.Input}],tableData:[{type:t.Input}],showSelected:[{type:t.Input}],selectField:[{type:t.Input}],showTableTotal:[{type:t.Input}],tableTotalOption:[{type:t.Input}],selectEvent:[{type:t.Output}],tableSearchEvent:[{type:t.Output}],tableLoading:[{type:t.Input}],tablePageIndex:[{type:t.Input}],tablePageSize:[{type:t.Input}],tablePageIndexChange:[{type:t.Output}],tablePageSizeChange:[{type:t.Output}],tableTotal:[{type:t.ContentChild,args:["tableTotal",{static:!1}]}],tableLeftButton:[{type:t.ContentChild,args:["tableLeftButton",{static:!1}]}],tableRightButton:[{type:t.ContentChild,args:["tableRightButton",{static:!1}]}]},z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showSelected",void 0),z([a.InputBoolean(),I("design:type",Boolean)],e.prototype,"showTableTotal",void 0),e}();var ue=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,p.NzTableModule,G,re,F,S,m.NzToolTipModule,c.NzPopconfirmModule,h.NzResizableModule,d.NzDropDownModule,g.NzTreeModule],declarations:[ge],providers:[le],exports:[ge],schemas:[t.NO_ERRORS_SCHEMA]}]}],e}(),fe=function(){function e(){this.showIcon=!0}return e.prototype.ngOnInit=function(){},e.decorators=[{type:t.Component,args:[{selector:"hd-tip",template:"<nz-content>\n <div *ngIf=\"showIcon; else noIcon\" class=\"hd-tip\" [ngStyle]=\"{'font-size': fontSize + 'px'}\">\n {{title}}\n </div>\n <ng-template #noIcon>\n <div [ngStyle]=\"{'font-size': fontSize + 'px', 'font-weight': 500, 'color': '#2A3634'}\">\n {{title}}\n </div>\n </ng-template>\n</nz-content>\n",styles:["::ng-deep .common-btn-group>a{font-size:12px;font-weight:400;color:#12a34f!important;white-space:nowrap}::ng-deep .common-btn-group .common-danger-btn:hover{color:#f05b24!important}::ng-deep .common-btn-group>a:hover{color:#20bd62!important}::ng-deep .common-btn-group>a:not(:last-child)::after{content:'';margin:0 2px}::ng-deep .common-billNumber>a{color:#3b77e3}button{box-shadow:unset;text-shadow:unset}::ng-deep .ant-form-item-label>label{color:#4b504e}::ng-deep .ant-input-number-input{height:28px}::ng-deep .ant-input-number{height:28px}textarea.ant-input{height:auto;min-height:28px}::ng-deep .ant-select-selection--multiple{min-height:28px}::ng-deep .ant-select-selection__rendered>ul>li{height:22px!important;margin-top:3px!important;line-height:22px!important}::ng-deep .ant-advanced-search-form .ant-form-item{margin-bottom:0!important}::ng-deep .ant-select-selection--single{height:28px!important}::ng-deep .ant-input{height:28px}::ng-deep .ant-input[disabled]:hover{border-color:#d9d9d9!important}::ng-deep .ant-select-selection__rendered{line-height:28px!important}::ng-deep .ant-calendar-range-picker-input{text-align:left!important}::ng-deep .ant-calendar-picker{width:100%!important}::ng-deep .ant-row{margin-right:0!important;margin-left:0!important}::ng-deep .ant-col-6{padding-left:12px;padding-right:12px}::ng-deep .ant-col-12{padding-left:12px;padding-right:12px}::ng-deep .ant-col-18{padding-left:12px;padding-right:12px}::ng-deep .ant-col-24{padding-left:12px;padding-right:12px}::ng-deep .ant-alert-info{background-color:#f5f8f6;border:1px solid #cfe3d4}:host ::ng-deep th{background:#f5f8f6!important;font-weight:700!important;white-space:nowrap;font-size:12px;font-family:PingFangSC-Medium,PingFang SC;color:#2a3634;padding:8px!important;box-sizing:border-box}:host ::ng-deep td{font-weight:400;font-style:normal;font-size:12px;color:#2a3634;text-align:left;white-space:nowrap;padding:8px!important;box-sizing:border-box}::ng-deep .ant-pagination-options{display:inline-flex;align-items:center}::ng-deep .ant-time-picker{width:100%}.hd-tip{display:flex;position:relative;font-weight:500;color:#2a3634;padding-left:8px;line-height:22px}.hd-tip::before{position:absolute;left:0;top:calc((100% - 12px)/ 2);width:4px;height:12px;background:#12a34f;border-radius:2px;content:''}"]}]}],e.ctorParameters=function(){return[]},e.propDecorators={showIcon:[{type:t.Input}],fontSize:[{type:t.Input}],title:[{type:t.Input}]},e}();var be=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,i.NgZorroAntdModule],exports:[fe],declarations:[fe]}]}],e}(),xe=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{exports:[F,S,T,H,_,j,K,Q,G,re,Y,ue,be,ie,ne]}]}],e}(),ze=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule],exports:[xe],providers:[],entryComponents:[ee]}]}],e}(),Ie=function(){this.value=null};var ve=function(){};var we=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),ye=function(){};var Ce=function(){this.value=null,this.showTime=!1};var Se={Input:0,Select:1,Date:2,DateRange:3,MultipleSelect:4};Se[Se.Input]="Input",Se[Se.Select]="Select",Se[Se.Date]="Date",Se[Se.DateRange]="DateRange",Se[Se.MultipleSelect]="MultipleSelect";var Oe=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),Le=function(){this.require=!1,this.hide=!1,this.value=null,this.inputNumber=new A,this.showTime=!1,this.canSearch=!1};var ke=function(){};var De=function(){};var Fe={Input:0,Select:1,Date:2,DateRange:3,TextArea:4,InputNumber:5,MultipleSelect:6,ViewDom:7,Switch:8,Time:9};Fe[Fe.Input]="Input",Fe[Fe.Select]="Select",Fe[Fe.Date]="Date",Fe[Fe.DateRange]="DateRange",Fe[Fe.TextArea]="TextArea",Fe[Fe.InputNumber]="InputNumber",Fe[Fe.MultipleSelect]="MultipleSelect",Fe[Fe.ViewDom]="ViewDom",Fe[Fe.Switch]="Switch",Fe[Fe.Time]="Time";var Ne=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),Te=function(){this.require=!1,this.width=1,this.hide=!1,this.totalWidth=0,this.isRowFirst=0,this.value=null,this.inputNumber=new A,this.showTime=!1};var Ee={Input:0,Select:1,Date:2,DateRange:3,TextArea:4,InputNumber:5,MultipleSelect:6,ViewDom:7,Switch:8,Time:9};Ee[Ee.Input]="Input",Ee[Ee.Select]="Select",Ee[Ee.Date]="Date",Ee[Ee.DateRange]="DateRange",Ee[Ee.TextArea]="TextArea",Ee[Ee.InputNumber]="InputNumber",Ee[Ee.MultipleSelect]="MultipleSelect",Ee[Ee.ViewDom]="ViewDom",Ee[Ee.Switch]="Switch",Ee[Ee.Time]="Time";var Pe=function(){function e(){}return e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e},token:e,providedIn:"root"}),e}(),Me={fillSelectOption:function(e,t,n){var o=e;if(!o||!o.length)return o;for(var i=e.length,a=0;a<i;a++)o[a].name===t&&(o[a].selectOption.selectList=n);return o},fillArrayFormItem:function(e,t){if(!e||!e.length)return[];for(var n=e.length,o=0;o<n;o++)t[e[o].name]&&(e[o].value=t[e[o].name]);return e},arrayToSelectOptionList:function(e,t){var n=[];return e&&e.length?(t?t.labelTip&&t.valueTip?e.forEach((function(e){var o=e;o.label=e[t.label],o.value=e[t.value],t.valueTip&&(o[t.valueTip]=e[t.value]),t.labelTip&&(o[t.labelTip]=e[t.label]),n.push(o)})):e.forEach((function(e){var o=e;o.label=e[t.label],o.value=e[t.value],n.push(o)})):e.forEach((function(e){var t={};t.label=e,t.value=e,n.push(t)})),n):n}};e.ButtonSize=L,e.ButtonType=O,e.ColWidth=pe,e.ColorOption=ke,e.ExplainOption=De,e.FantasyNgzorroModule=ze,e.Filter=Ce,e.FilterListType=Se,e.FormItem=Te,e.FormLine=Le,e.FormLineType=Fe,e.FormListType=Ee,e.HdButtonService=k,e.HdCurrentTableComponent=X,e.HdDetailFormService=we,e.HdFilterService=Oe,e.HdFormLinesService=Ne,e.HdFormService=Pe,e.HdLogComponent=ee,e.HdLogService=te,e.HdOption=P,e.HdTableColumn=se,e.HdTableTotalOption=ce,e.InputNumber=A,e.OperateBtn=de,e.Page=E,e.SelectOption=M,e.TableCacheOption=he,e.TableColumn=Ie,e.TableTotalOption=ve,e.TotalOption=ye,e.TreeGrid=me,e.Utils=Me,e.ɵa=xe,e.ɵb=F,e.ɵba=fe,e.ɵbb=ie,e.ɵbc=oe,e.ɵbd=ne,e.ɵc=D,e.ɵd=S,e.ɵe=C,e.ɵf=T,e.ɵg=N,e.ɵh=H,e.ɵi=V,e.ɵj=_,e.ɵk=W,e.ɵl=j,e.ɵm=B,e.ɵn=K,e.ɵo=U,e.ɵp=Q,e.ɵq=G,e.ɵr=J,e.ɵs=Z,e.ɵt=re,e.ɵu=ae,e.ɵv=Y,e.ɵw=ue,e.ɵx=ge,e.ɵy=le,e.ɵz=be,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=fantasy-ngzorro.umd.min.js.map