修复食谱展示页面

This commit is contained in:
huangdeliang 2021-03-06 14:14:25 +08:00
parent d7e5ae3732
commit d266eabe8b
5 changed files with 67 additions and 38 deletions
stdiet-custom/src/main/resources/mapper/custom
stdiet-ui/src/views/custom/recipesShow
MenuDetail
NutriComputeCom
index.vue
index.vueutils.js

@ -239,7 +239,7 @@
<!-- 通过outId查询食谱计划简要-->
<select id="selectRecipesPlanListInfo" resultMap="SysRecipesPlanListInfoResult">
select id, start_date, end_date, start_num_day, end_num_day, recipes_id from sys_recipes_plan where out_id=#{outId} and del_flag = 0
select id, start_date, end_date, start_num_day, end_num_day, recipes_id from sys_recipes_plan where out_id=#{outId} and del_flag = 0 and review_status = 2
</select>
<resultMap type="SysRecipesDaily" id="SysRecipesResult">
@ -248,9 +248,10 @@
</resultMap>
<select id="selectMenuIds" parameterType="Long" resultMap="SysRecipesResult">
select id, num_day from sys_customer_daily_menu where recipes_id=#{recipes_id} and del_flag = 0 order by num_day asc
select id, num_day from sys_customer_daily_menu where recipes_id=#{recipes_id} order by num_day asc
</select>
<!-- 批量修改食谱计划 -->
<update id="updateMuchRecipesPlanDate" parameterType="SysRecipesPlan"> 
<!--<foreach collection="list" item="item" separator=";" open="" close="">

@ -56,6 +56,7 @@ export default {
},
watch: {
value(val) {
console.log({ val });
if (!val || !val.length) {
return;
}

@ -5,7 +5,10 @@
<!-- 食谱详细 -->
<el-card v-for="obj in menus" :key="obj.type" style="margin-top: 12px">
<div slot="header">
<span>{{ obj.typeName }}</span>
<div class="header_style">
<span>{{ obj.typeName }}</span>
<span class="time">{{ menuTypeTimeDict[obj.type] }}</span>
</div>
</div>
<div v-for="mObj in obj.values" :key="mObj.id">
<div class="dishes_item">
@ -60,6 +63,10 @@ export default {
},
data() {
return {
menuTypeTimeDict: {
2: "10:00 - 10:30",
4: "15:00 - 15:30",
},
menuTypeDict: {},
curUnitDict: {},
cusWeightDict: {},
@ -107,6 +114,15 @@ export default {
.menu_detail_wrapper {
padding: 0 12px 12px 12px;
.header_style {
display: flex;
justify-content: space-between;
.time {
color: #8c8c8c;
}
}
.dishes_item {
height: 38px;
padding: 0 8px;

@ -15,8 +15,10 @@
@click="handleUserInfoClick"
/>
</div>
<div class="content" v-loading="loading">
<MenuDetail :value="menuData" :date="curDate" />
<div v-loading="loading">
<div class="content">
<MenuDetail :value="menuData" :date="curDate" />
</div>
</div>
<!-- 食谱计划 -->
@ -71,24 +73,29 @@ export default {
if (response.code === 200) {
let curPlanId, curMenuId, curDate;
const toDay = dayjs().format("YYYY-MM-DD");
this.planList = response.data.map((plan) => ({
menus: plan.menus.map((menu, idx) => {
const date = dayjs(plan.startDate)
.add(idx, "day")
.format("YYYY-MM-DD");
if (toDay === date) {
curPlanId = plan.id;
curMenuId = menu.id;
curDate = date;
}
return {
date,
id: menu.id,
};
}),
label: `${plan.startNumDay}${plan.endNumDay}`,
id: plan.id,
}));
this.planList = response.data.reduce((arr, plan) => {
if (plan.menus) {
arr.push({
menus: plan.menus.map((menu, idx) => {
const date = dayjs(plan.startDate)
.add(idx, "day")
.format("YYYY-MM-DD");
if (toDay === date) {
curPlanId = plan.id;
curMenuId = menu.id;
curDate = date;
}
return {
date,
id: menu.id,
};
}),
label: `${plan.startNumDay}${plan.endNumDay}`,
id: plan.id,
});
}
return arr;
}, []);
if (!curMenuId) {
curMenuId = this.planList[0].menus[0].id;
curPlanId = this.planList[0].id;
@ -98,6 +105,10 @@ export default {
this.curPlanId = curPlanId;
this.curDate = curDate;
// console.log({
// planList: this.planList,
// });
this.fetchRecipesInfo(this.curMenuId);
}
});

@ -17,21 +17,21 @@ export function getProcessMenuData(menuData) {
igdList: cur.igdList.reduce((igdArr, igdData) => {
if (igdData.id > 0) {
const tarDetail = cur.detail.find(obj => obj.id === igdData.id);
igdArr.push({
id: igdData.id,
name: igdData.name,
carbonRatio: igdData.carbonRatio,
fatRatio: igdData.fatRatio,
proteinRatio: igdData.proteinRatio,
cusUnit: tarDetail ? tarDetail.cus_unit : igdData.cusUnit,
cusWeight: tarDetail
? parseFloat(tarDetail.cus_weight)
: igdData.cusWeight,
weight: tarDetail ? parseFloat(tarDetail.weight) : igdData.weight,
notRec: igdData.notRec,
rec: igdData.rec,
type: igdData.type
});
if (tarDetail) {
igdArr.push({
id: igdData.id,
name: igdData.name,
carbonRatio: igdData.carbonRatio,
fatRatio: igdData.fatRatio,
proteinRatio: igdData.proteinRatio,
cusUnit: tarDetail.cus_unit,
cusWeight: tarDetail.cus_weight,
weight: parseFloat(tarDetail.weight),
notRec: igdData.notRec,
rec: igdData.rec,
type: igdData.type
});
}
}
return igdArr;
}, [])