|
|
@ -196,3 +196,229 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</app-page> |
|
|
|
|
|
|
|
<!-- <app-page> |
|
|
|
<div nz-form nzLayout="vertical"> |
|
|
|
|
|
|
|
<ng-template #calcTypeTpl> |
|
|
|
<nz-space> |
|
|
|
<div *nzSpaceItem> |
|
|
|
计算单位: |
|
|
|
</div> |
|
|
|
<div *nzSpaceItem> |
|
|
|
<nz-radio-group [(ngModel)]="calcType"> |
|
|
|
<label nz-radio [nzValue]="'种'">种</label> |
|
|
|
<label nz-radio [nzValue]="'g'">[formGroup]="form"</label> |
|
|
|
</nz-radio-group> |
|
|
|
</div> |
|
|
|
</nz-space> |
|
|
|
</ng-template> |
|
|
|
|
|
|
|
<nz-card nzTitle="食物种类及数量标准设置" [nzExtra]="calcTypeTpl"> |
|
|
|
<div nz-row [nzGutter]="12"> |
|
|
|
<div nz-col nzSpan="24"> |
|
|
|
<ng-template #dayBtnTpl> |
|
|
|
<button nz-button nzType="link" (click)="addFoodType('day')"> |
|
|
|
添加食物种类 |
|
|
|
</button> |
|
|
|
</ng-template> |
|
|
|
<nz-card nzType="inner" nzTitle="食物种类及数量标准(日)" [nzExtra]="dayBtnTpl"> |
|
|
|
<nz-empty *ngIf="foodCategoryDay.length === 0"></nz-empty> |
|
|
|
<div *ngIf="foodCategoryDay.length > 0"> |
|
|
|
<div class=""> |
|
|
|
<div nz-row [nzGutter]="[48,12]"> |
|
|
|
<div nz-col nzSpan="24" *ngFor="let d of foodCategoryDay"> |
|
|
|
<div class="flex items-center"> |
|
|
|
<div class="w-60"> |
|
|
|
|
|
|
|
<input nz-input placeholder="请输入自定义规则名称" /> |
|
|
|
</div> |
|
|
|
<div class="flex-1"> |
|
|
|
<nz-select nzPlaceHolder="请选择包含食物种类(多选时数量合并计算)" nzMode="multiple" |
|
|
|
class="w-full" [(ngModel)]="d.type"> |
|
|
|
<nz-option *ngFor="let cate of globalEnum.category" |
|
|
|
[nzLabel]="cate.key" |
|
|
|
[nzValue]="cate.value"> |
|
|
|
</nz-option> |
|
|
|
</nz-select> |
|
|
|
</div> |
|
|
|
<div class="flex-1 mx-3"> |
|
|
|
<div class="flex"> |
|
|
|
<div class="flex-1"> |
|
|
|
<input type="number" min="0" nz-input [(ngModel)]="d.value" /> |
|
|
|
</div> |
|
|
|
<div> |
|
|
|
~ |
|
|
|
</div> |
|
|
|
<div class="flex-1"> |
|
|
|
<input type="number" min="0" nz-input [(ngModel)]="d.value" /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div> |
|
|
|
<button nz-button nzType="link" (click)="removeFoodType('day',d.type)"> |
|
|
|
<i nz-icon nzType="delete"></i> |
|
|
|
</button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</nz-card> |
|
|
|
</div> |
|
|
|
<div nz-col nzSpan="24" class="mt-4"> |
|
|
|
<ng-template #weekBtnTpl> |
|
|
|
<button nz-button nzType="link" (click)="addFoodType('week')"> |
|
|
|
添加食物种类 |
|
|
|
</button> |
|
|
|
</ng-template> |
|
|
|
<nz-card nzType="inner" nzTitle="食物种类及数量标准(周)" [nzExtra]="weekBtnTpl"> |
|
|
|
<nz-empty *ngIf="foodCategoryWeek.length === 0"></nz-empty> |
|
|
|
<div *ngIf="foodCategoryWeek.length > 0"> |
|
|
|
<div class=""> |
|
|
|
<div nz-row [nzGutter]="[48,12]"> |
|
|
|
<div nz-col nzSpan="12" *ngFor="let w of foodCategoryWeek"> |
|
|
|
<div class="flex items-center"> |
|
|
|
<div class="w-60"> |
|
|
|
<nz-select nzPlaceHolder="请选择" class="w-full" [(ngModel)]="w.type"> |
|
|
|
<nz-option *ngFor="let cate of globalEnum.category" |
|
|
|
[nzLabel]="cate.key" |
|
|
|
[nzValue]="cate.value"> |
|
|
|
</nz-option> |
|
|
|
</nz-select> |
|
|
|
</div> |
|
|
|
<div class="flex-1 mx-3"> |
|
|
|
<nz-input-group nzAddOnBefore="大于等于" nzAddOnAfter="种"> |
|
|
|
<input type="number" nz-input [(ngModel)]="w.value" /> |
|
|
|
</nz-input-group> |
|
|
|
</div> |
|
|
|
<div> |
|
|
|
<button nz-button nzType="link" (click)="removeFoodType('week',w.type)"> |
|
|
|
<i nz-icon nzType="delete"></i> |
|
|
|
</button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</nz-card> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</nz-card> |
|
|
|
|
|
|
|
<nz-card nzTitle="营养标准人群设置" class="mt-4 mb-20" [nzExtra]="peopleExtraTpl"> |
|
|
|
<nz-empty *ngIf="ingredient.length === 0"></nz-empty> |
|
|
|
<ng-container *ngIf="ingredient.length > 0"> |
|
|
|
<nz-card |
|
|
|
nzType="inner" |
|
|
|
[nzTitle]="peopleGroupNamTpl" |
|
|
|
[nzExtra]="peopleActionTpl" |
|
|
|
*ngFor="let p of ingredient;let i = index" |
|
|
|
class="mt-4"> |
|
|
|
<ng-template #peopleGroupNamTpl> |
|
|
|
<div class="flex items-center"> |
|
|
|
<span class="mr-2"> |
|
|
|
人群名称: |
|
|
|
</span> |
|
|
|
<div class=" w-80"> |
|
|
|
<input nz-input placeholder="请输入人群名称" [(ngModel)]="p.name" /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</ng-template> |
|
|
|
<ng-template #peopleActionTpl> |
|
|
|
<nz-space> |
|
|
|
<button *nzSpaceItem nz-button nzType="link" (click)="addNutrition(i)"> |
|
|
|
添加营养素 |
|
|
|
</button> |
|
|
|
<button *nzSpaceItem nz-button nzType="link" (click)="removePeopleGroup(i)" nzDanger> |
|
|
|
删除人群 |
|
|
|
</button> |
|
|
|
</nz-space> |
|
|
|
</ng-template> |
|
|
|
<nz-empty *ngIf="p.nutritions.length === 0"></nz-empty> |
|
|
|
<ng-container *ngIf="p.nutritions.length > 0"> |
|
|
|
<h3 class="mb-2">每人每天能量和营养素供给量标准</h3> |
|
|
|
<div nz-row [nzGutter]="[48,12]"> |
|
|
|
<div nz-col nzSpan="24" nzXXl="12" *ngFor="let n of p.nutritions"> |
|
|
|
<div class="flex items-center"> |
|
|
|
<div class="w-40"> |
|
|
|
<nz-select nzPlaceHolder="请选择" class="w-full" [(ngModel)]="n.nutrition"> |
|
|
|
<nz-option *ngFor="let cate of globalEnum.nutrient " |
|
|
|
[nzLabel]="cate.value + '(' + cate.measurement + ')'" |
|
|
|
[nzValue]="cate.key"> |
|
|
|
</nz-option> |
|
|
|
</nz-select> |
|
|
|
</div> |
|
|
|
<div class="flex-1 ml-2"> |
|
|
|
<div class="flex"> |
|
|
|
<input nz-input placeholder="最小值" type="number" |
|
|
|
[(ngModel)]="n.min" /> |
|
|
|
<div class="px-2 w-10"> |
|
|
|
~ |
|
|
|
</div> |
|
|
|
<input nz-input placeholder="最大值" type="number" |
|
|
|
[(ngModel)]="n.max" /> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="ml-2"> |
|
|
|
<nz-space nzAlign="center"> |
|
|
|
<div class="pr-3" *nzSpaceItem> |
|
|
|
<label nz-checkbox [(ngModel)]="n.hasUl" |
|
|
|
(ngModelChange)="ulChange(i,n.nutrition,$event)"> |
|
|
|
ul值 |
|
|
|
</label> |
|
|
|
</div> |
|
|
|
<div *nzSpaceItem class="w-20"> |
|
|
|
<ng-container> |
|
|
|
<input [disabled]="!n.hasUl" |
|
|
|
nz-input |
|
|
|
placeholder=" ul值" |
|
|
|
type="number" |
|
|
|
[(ngModel)]="n.ul" /> |
|
|
|
</ng-container> |
|
|
|
</div> |
|
|
|
</nz-space> |
|
|
|
</div> |
|
|
|
<div class="ml-2"> |
|
|
|
<button nz-button nzType="link" (click)="removeNutrition(i,n.nutrition)"> |
|
|
|
<i nz-icon nzType="delete"></i> |
|
|
|
</button> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
</div> |
|
|
|
</ng-container> |
|
|
|
</nz-card> |
|
|
|
</ng-container> |
|
|
|
</nz-card> |
|
|
|
|
|
|
|
|
|
|
|
<ng-template #peopleExtraTpl> |
|
|
|
<button nz-button (click)="addPeopleGroup()"> |
|
|
|
添加人群 |
|
|
|
</button> |
|
|
|
</ng-template> |
|
|
|
|
|
|
|
</div> |
|
|
|
<ng-template #formControlErrorTpl let-control> |
|
|
|
<form-error-tips [control]="control"></form-error-tips> |
|
|
|
</ng-template> |
|
|
|
|
|
|
|
<div class="fixed-footter left-[218px] fixed bottom-0 right-0 bg-white z-10 py-2 "> |
|
|
|
<div class="flex justify-center"> |
|
|
|
<nz-space> |
|
|
|
<button *nzSpaceItem nz-button nzType="primary" (click)="onSubmit()"> |
|
|
|
确定 |
|
|
|
</button> |
|
|
|
<button *nzSpaceItem nz-button> |
|
|
|
取消 |
|
|
|
</button> |
|
|
|
</nz-space> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</app-page> --> |