Browse Source

标准修改

main
kkerwin 2 years ago
parent
commit
53d76b3536
  1. 226
      projects/admin/src/app/pages/standard/standard-setting/standard-setting.component.html
  2. 2
      projects/admin/src/app/pages/standard/standard-setting/standard-setting.component.ts
  3. 8
      projects/cdk/src/ingredient/nutrition-table/nutrition-table.component.html
  4. 10
      projects/cdk/src/ingredient/nutrition-table/nutrition-table.component.less
  5. 9
      projects/cdk/src/services/api.service.ts
  6. 4
      projects/client/src/app/components/app-layout/app-layout.component.html

226
projects/admin/src/app/pages/standard/standard-setting/standard-setting.component.html

@ -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> -->

2
projects/admin/src/app/pages/standard/standard-setting/standard-setting.component.ts

@ -47,6 +47,8 @@ export class StandardSettingComponent {
state: any;
calcType = "种";
uploadLoading = false;
foodCategoryDay: StandardItemInterface[] = [];

8
projects/cdk/src/ingredient/nutrition-table/nutrition-table.component.html

@ -57,7 +57,7 @@
<nz-space>
<div *nzSpaceItem>
<div class="tag less">
<div class="inner"></div>
</div>
<p>
不足
@ -65,7 +65,7 @@
</div>
<div *nzSpaceItem>
<div class="tag success">
<div class="inner"></div>
</div>
<p>
适量
@ -73,7 +73,7 @@
</div>
<div *nzSpaceItem>
<div class="tag warning">
<div class="inner"></div>
</div>
<p>
过量
@ -81,7 +81,7 @@
</div>
<div *nzSpaceItem>
<div class="tag danger">
<div class="inner"></div>
</div>
<p>
严重超标

10
projects/cdk/src/ingredient/nutrition-table/nutrition-table.component.less

@ -27,29 +27,29 @@
}
.tag {
.tag .inner {
display: inline-block;
width: 48px;
height: 20px;
border-radius: 4px;
}
.less {
.less .inner {
background-color: #a7a7a7;
color: #fff;
}
.success {
.success .inner {
background-color: #1bbc9b;
color: #fff;
}
.warning {
.warning .inner {
background-color: #f3c200;
color: #fff;
}
.danger {
.danger .inner {
background-color: #f5222d;
color: #fff;
}

9
projects/cdk/src/services/api.service.ts

@ -71,7 +71,8 @@ export class ApiService {
);
}
login(v: {}) {
login(v: AnyObject) {
v["admin"] = this.project === "admin";
const params = Utils.objectToHttpParams(v);
return this.http.get<ResponseType>("/api/login", { params }).pipe(
tap((res) => {
@ -455,16 +456,16 @@ export class ApiService {
getAnalysis(id: number, day?: number, crow?: string) {
const params = Utils.objectStringify({ id, day, crow });
return this.http.get<ResponseType>(`/api/menu/dish/analysis?${params}`);
return this.http.get<ResponseType>(`/api/menu/analysis?${params}`);
}
getAnalysisEnergy(id: number, day?: number, crow?: string) {
const params = Utils.objectStringify({ id, day, crow });
return this.http.get<ResponseType>(`/api/menu/dish/analysis/energy?${params}`);
return this.http.get<ResponseType>(`/api/menu/analysis/energy?${params}`);
}
getAnalysisRule(id: number, day?: number, crow?: string) {
const params = Utils.objectStringify({ id, day, crow });
return this.http.get<ResponseType>(`/api/menu/dish/analysis/types?${params}`);
return this.http.get<ResponseType>(`/api/menu/analysis/types?${params}`);
}
getMenuDataVis() {

4
projects/client/src/app/components/app-layout/app-layout.component.html

@ -45,11 +45,11 @@
<span nz-icon nzType="fund" nzTheme="outline"></span>
<span>大屏显示</span>
</li>
<li nz-menu-item [routerLink]="['/','meal-setting']" nzMatchRouter
<!-- <li nz-menu-item [routerLink]="['/','meal-setting']" nzMatchRouter
*ngxPermissionsOnly="['21','22']">
<span nz-icon nzType="setting" nzTheme="outline"></span>
<span>配餐设置</span>
</li>
</li> -->
<li nz-menu-item class="k-icon" [routerLink]="['/','food']" nzMatchRouter
*ngxPermissionsOnly="['23','24']">
<span nz-icon nzType="k-icon:carrot" nzTheme="outline"></span>

Loading…
Cancel
Save