生成食谱接口对接
This commit is contained in:
@ -23,10 +23,6 @@ public class SysDishes {
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
private Long cId;
|
||||
|
||||
private Long menuId;
|
||||
|
||||
/**
|
||||
* 菜品名称
|
||||
*/
|
||||
@ -79,6 +75,4 @@ public class SysDishes {
|
||||
|
||||
private List<SysDishesIngredient> igdList;
|
||||
|
||||
private JSONArray detail;
|
||||
|
||||
}
|
@ -1,47 +1,17 @@
|
||||
package com.stdiet.custom.domain;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class SysRecipes {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Long id;
|
||||
|
||||
private Integer numDay;
|
||||
private Long cusId;
|
||||
|
||||
private List<SysDishes> dishes;
|
||||
private Long planId;
|
||||
|
||||
private Integer reviewStatus;
|
||||
|
||||
/**
|
||||
* 创建者
|
||||
*/
|
||||
private String createBy;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新者
|
||||
*/
|
||||
private String updateBy;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
private List<SysRecipesDaily> menus;
|
||||
}
|
||||
|
@ -0,0 +1,34 @@
|
||||
package com.stdiet.custom.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class SysRecipesDaily {
|
||||
private Long id;
|
||||
|
||||
private Integer numDay;
|
||||
|
||||
private Date date;
|
||||
|
||||
private Long recipesId;
|
||||
|
||||
private Long cusId;
|
||||
|
||||
private Integer reviewStatus;
|
||||
|
||||
private Date createTime;
|
||||
|
||||
private String createBy;
|
||||
|
||||
private Date updateTime;
|
||||
|
||||
private String updateBy;
|
||||
|
||||
private String remark;
|
||||
|
||||
private List<SysRecipesDailyDishes> dishes;
|
||||
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
package com.stdiet.custom.domain;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class SysRecipesDailyDishes {
|
||||
private Long id;
|
||||
|
||||
private Long menuId;
|
||||
|
||||
private String name;
|
||||
|
||||
private Long dishesId;
|
||||
|
||||
private JSONArray detail;
|
||||
|
||||
private String methods;
|
||||
|
||||
private List<SysDishesIngredient> igdList;
|
||||
|
||||
private String type;
|
||||
|
||||
private Integer isMain;
|
||||
}
|
@ -1,17 +1,28 @@
|
||||
package com.stdiet.custom.mapper;
|
||||
|
||||
import com.stdiet.custom.domain.SysDishes;
|
||||
import com.stdiet.custom.domain.SysRecipes;
|
||||
import com.stdiet.custom.domain.SysRecipesDaily;
|
||||
import com.stdiet.custom.domain.SysRecipesDailyDishes;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface SysRecipesMapper {
|
||||
|
||||
|
||||
public int addRecipes(SysRecipes sysRecipes);
|
||||
|
||||
public int bashAddDishes(List<SysRecipesDailyDishes> dishes);
|
||||
|
||||
public int bashAddMenus(List<SysRecipesDaily> menus);
|
||||
|
||||
|
||||
public int getNumDayByCusId(Long id);
|
||||
|
||||
public List<SysRecipes> selectSysRecipesByRecipesId(Long id);
|
||||
|
||||
public int updateDishesDetail(SysDishes sysDishes);
|
||||
public int updateDishesDetail(SysRecipesDailyDishes sysRecipesDaily);
|
||||
|
||||
public int insertDishes(SysDishes sysDishes);
|
||||
public int addDishes(SysRecipesDailyDishes sysRecipesDaily);
|
||||
|
||||
public int deleteDishes(Long cId);
|
||||
public int deleteDishes(Long id);
|
||||
}
|
||||
|
@ -1,16 +1,20 @@
|
||||
package com.stdiet.custom.service;
|
||||
|
||||
import com.stdiet.custom.domain.SysDishes;
|
||||
import com.stdiet.custom.domain.SysRecipes;
|
||||
import com.stdiet.custom.domain.SysRecipesDaily;
|
||||
import com.stdiet.custom.domain.SysRecipesDailyDishes;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ISysRecipesService {
|
||||
|
||||
public int addRecipes(SysRecipes sysRecipes);
|
||||
|
||||
public List<SysRecipes> selectSysRecipesByRecipesId(Long id);
|
||||
|
||||
public int updateDishesDetail(SysDishes sysDishes);
|
||||
public int updateDishesDetail(SysRecipesDailyDishes sysRecipesDaily);
|
||||
|
||||
public int insertDishes(SysDishes sysDishes);
|
||||
public int addDishes(SysRecipesDailyDishes sysRecipesDaily);
|
||||
|
||||
public int deleteDishes(Long cId);
|
||||
public int deleteDishes(Long id);
|
||||
}
|
||||
|
@ -1,13 +1,18 @@
|
||||
package com.stdiet.custom.service.impl;
|
||||
|
||||
import com.stdiet.custom.domain.SysDishes;
|
||||
import com.stdiet.custom.domain.SysRecipes;
|
||||
import com.stdiet.custom.domain.SysRecipesDaily;
|
||||
import com.stdiet.custom.domain.SysRecipesDailyDishes;
|
||||
import com.stdiet.custom.domain.SysRecipesPlan;
|
||||
import com.stdiet.custom.mapper.SysRecipesMapper;
|
||||
import com.stdiet.custom.mapper.SysRecipesPlanMapper;
|
||||
import com.stdiet.custom.service.ISysRecipesService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@ -17,23 +22,64 @@ public class SysRecipesServiceImpl implements ISysRecipesService {
|
||||
@Autowired
|
||||
private SysRecipesMapper sysRecipesMapper;
|
||||
|
||||
@Autowired
|
||||
private SysRecipesPlanMapper sysRecipesPlanMapper;
|
||||
|
||||
|
||||
@Override
|
||||
public int addRecipes(SysRecipes sysRecipes) {
|
||||
int rows = sysRecipesMapper.addRecipes(sysRecipes);
|
||||
if (rows > 0) {
|
||||
int count = sysRecipesMapper.getNumDayByCusId(sysRecipes.getCusId());
|
||||
List<SysRecipesDaily> menus = sysRecipes.getMenus();
|
||||
List<SysRecipesDailyDishes> dishes = new ArrayList<>();
|
||||
int size = menus.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
SysRecipesDaily tarMenu = menus.get(i);
|
||||
// 计算menuId
|
||||
long dailyId = sysRecipes.getId() + new Date().getTime() + i;
|
||||
tarMenu.setId(dailyId);
|
||||
// 插入recipiesId
|
||||
tarMenu.setRecipesId(sysRecipes.getId());
|
||||
// 插入numDay
|
||||
tarMenu.setNumDay(count + i + 1);
|
||||
for (SysRecipesDailyDishes tmpDishes : tarMenu.getDishes()) {
|
||||
// 让菜品插入menuId
|
||||
tmpDishes.setMenuId(dailyId);
|
||||
dishes.add(tmpDishes);
|
||||
}
|
||||
}
|
||||
// 插入每天食谱
|
||||
sysRecipesMapper.bashAddMenus(menus);
|
||||
// 插入每天菜品
|
||||
sysRecipesMapper.bashAddDishes(dishes);
|
||||
// 更新食谱计划
|
||||
SysRecipesPlan sysRecipesPlan = new SysRecipesPlan();
|
||||
sysRecipesPlan.setId(sysRecipes.getPlanId());
|
||||
sysRecipesPlan.setRecipesId(sysRecipes.getId());
|
||||
sysRecipesPlanMapper.updateSysRecipesPlan(sysRecipesPlan);
|
||||
}
|
||||
|
||||
return rows;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysRecipes> selectSysRecipesByRecipesId(Long id) {
|
||||
return sysRecipesMapper.selectSysRecipesByRecipesId(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int updateDishesDetail(SysDishes sysDishes) {
|
||||
return sysRecipesMapper.updateDishesDetail(sysDishes);
|
||||
public int updateDishesDetail(SysRecipesDailyDishes sysRecipesDailyDishes) {
|
||||
return sysRecipesMapper.updateDishesDetail(sysRecipesDailyDishes);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int insertDishes(SysDishes sysDishes) {
|
||||
return sysRecipesMapper.insertDishes(sysDishes);
|
||||
public int addDishes(SysRecipesDailyDishes sysRecipesDailyDishes) {
|
||||
return sysRecipesMapper.addDishes(sysRecipesDailyDishes);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int deleteDishes(Long cId) {
|
||||
return sysRecipesMapper.deleteDishes(cId);
|
||||
public int deleteDishes(Long id) {
|
||||
return sysRecipesMapper.deleteDishes(id);
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.stdiet.custom.mapper.SysRecipesMapper">
|
||||
|
||||
<resultMap type="SysRecipes" id="SysRecipesResult">
|
||||
<resultMap type="SysRecipesDaily" id="SysRecipesResult">
|
||||
<result property="id" column="id"/>
|
||||
<result property="numDay" column="num_day"/>
|
||||
<result property="updateBy" column="update_by"/>
|
||||
@ -15,9 +15,10 @@
|
||||
<association property="dishes" column="id" select="selectDishesByMenuId"/>
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="SysDishesResult" type="SysDishes">
|
||||
<result property="id" column="dishes_id"/>
|
||||
<result property="cId" column="id" />
|
||||
<resultMap id="SysDishesResult" type="SysRecipesDailyDishes">
|
||||
<result property="dishesId" column="dishes_id"/>
|
||||
<result property="menuId" column="menu_id"/>
|
||||
<result property="id" column="id" />
|
||||
<result property="name" column="name"/>
|
||||
<result property="type" column="type"/>
|
||||
<result property="methods" column="methods"/>
|
||||
@ -78,26 +79,26 @@
|
||||
</select>
|
||||
|
||||
<!-- 更新菜品-->
|
||||
<update id="updateDishesDetail" parameterType="SysDishes">
|
||||
<update id="updateDishesDetail" parameterType="SysRecipesDailyDishes">
|
||||
update sys_customer_menu_dishes
|
||||
<trim prefix="SET" suffixOverrides=",">
|
||||
<if test="detail != null">detail = #{detail, jdbcType=OTHER, typeHandler=com.stdiet.custom.typehandler.ArrayJsonHandler},</if>
|
||||
</trim>
|
||||
where id = #{cId}
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<!-- 插入菜品-->
|
||||
<insert id="insertDishes" parameterType="SysDishes" useGeneratedKeys="true" keyProperty="id">
|
||||
<insert id="addDishes" parameterType="SysRecipesDailyDishes" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into sys_customer_menu_dishes
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="menuId != null">menu_id,</if>
|
||||
<if test="id != null">dishes_id,</if>
|
||||
<if test="dishesId != null">dishes_id,</if>
|
||||
<if test="type != null">type,</if>
|
||||
<if test="detail != null">detail,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="menuId != null">#{menuId},</if>
|
||||
<if test="id != null">#{id},</if>
|
||||
<if test="dishesId != null">#{dishesId},</if>
|
||||
<if test="type != null">#{type},</if>
|
||||
<if test="detail != null">#{detail, jdbcType=OTHER, typeHandler=com.stdiet.custom.typehandler.ArrayJsonHandler},</if>
|
||||
</trim>
|
||||
@ -105,7 +106,39 @@
|
||||
|
||||
<!-- 删除菜品-->
|
||||
<delete id="deleteDishes" parameterType="Long">
|
||||
delete from sys_customer_menu_dishes where id = #{cId}
|
||||
delete from sys_customer_menu_dishes where id = #{id}
|
||||
</delete>
|
||||
|
||||
<!-- 查询已有食谱天数-->
|
||||
<select id="getNumDayByCusId" parameterType="Long" resultType="Integer">
|
||||
select count(*) from sys_customer_daily_menu where cus_id = #{id}
|
||||
</select>
|
||||
|
||||
<!-- 新增食谱 -->
|
||||
<insert id="addRecipes" parameterType="SysRecipes" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into sys_customer_menu
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="cusId != null">cus_id,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="cusId != null">#{cusId},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<!-- 新增每菜单 -->
|
||||
<insert id="bashAddMenus">
|
||||
insert into sys_customer_daily_menu (id, num_day, date, recipes_id, cus_id) values
|
||||
<foreach collection="list" separator="," item="item" index="index">
|
||||
(#{item.id}, #{item.numDay}, #{item.date}, #{item.recipesId}, #{item.cusId})
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<!-- 新增菜单对应菜品-->
|
||||
<insert id="bashAddDishes" >
|
||||
insert into sys_customer_menu_dishes (menu_id, type, dishes_id, detail) values
|
||||
<foreach collection="list" separator="," item="item" index="index">
|
||||
(#{item.menuId}, #{item.type}, #{item.dishesId}, #{item.detail, jdbcType=OTHER, typeHandler=com.stdiet.custom.typehandler.ArrayJsonHandler})
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
</mapper>
|
@ -126,7 +126,7 @@
|
||||
|
||||
<!-- 食谱计划、订单表联查 -->
|
||||
<select id="selectPlanListByCondition" parameterType="SysRecipesPlan" resultMap="SysRecipesPlanResult">
|
||||
SELECT srp.id,srp.order_id,sr.customer,sr.phone,su_nutritionist.nick_name nutritionist,su_nutritionist_assis.nick_name AS nutritionist_assis,sr.start_time,sr.server_end_time, srp.start_date,srp.end_date,srp.send_flag,srp.send_time
|
||||
SELECT srp.id,srp.order_id,srp.recipes_id, sr.customer,sr.phone,su_nutritionist.nick_name nutritionist,su_nutritionist_assis.nick_name AS nutritionist_assis,sr.start_time,sr.server_end_time, srp.start_date,srp.end_date,srp.send_flag,srp.send_time
|
||||
FROM sys_recipes_plan srp
|
||||
LEFT JOIN sys_order sr ON sr.order_id = srp.order_id
|
||||
LEFT JOIN sys_user su_nutritionist ON su_nutritionist.user_id = sr.nutritionist_id AND su_nutritionist.del_flag = 0
|
||||
|
Reference in New Issue
Block a user