当前位置: 首页 > news >正文

qq代刷网站社区建设企业网站模板下载软件

qq代刷网站社区建设,企业网站模板下载软件,上海巴士公司,做网站被骗3000套餐管理 1 任务2 新增套餐2.1 需求分析和设计页面原型和业务规则接口设计setmeal和setmeal_dish表设计 2.2 代码开发2.2.1 根据分类id查询菜品DishControllerDishServiceDishServiceImplDishMapperDishMapper.xml 2.2.2 新增套餐接口SetmealControllerSetmealServiceSetmealSe… 套餐管理 1 任务2 新增套餐2.1 需求分析和设计页面原型和业务规则接口设计setmeal和setmeal_dish表设计 2.2 代码开发2.2.1 根据分类id查询菜品DishControllerDishServiceDishServiceImplDishMapperDishMapper.xml 2.2.2 新增套餐接口SetmealControllerSetmealServiceSetmealServiceImplSetmealMapper 新增套餐SetmealMapper.xmlSetmealDishMapper 保存套餐和菜品的关联关系SetmealDishMapper.xml 2.3 功能测试 3 套餐分页查询3.1 需求分许和设计3.2 代码实现SetmealControllerSetmealServiceSetmealServiceImplSetmealMapperSetmealMapper.xml 3.3 测试 1 任务 完成套餐管理模块所有业务功能包括 新增套餐套餐分页查询删除套餐修改套餐起售停售套餐 要求 根据产品原型进行需求分析分析出业务规则设计接口梳理表之间的关系分类表、菜品表、套餐表、口味表、套餐菜品关系表根据接口设计进行代码实现分别通过swagger接口文档和前后端联调进行功能测试 2 新增套餐 2.1 需求分析和设计 页面原型和业务规则 以下是根据分类id查询菜品 1 字段 1.1 排序创建时间的倒序排列单页最多显示10条 2 添加菜品 2.1点击添加菜品按钮弹出添加菜品弹窗菜品可以多选 2.2已选菜品数量超过7个显示滚动条已选菜品列表根据添加时间倒序排列 3 字段限制 3.1 字段限制 3.2 套餐图片上传 点击上传图片上传本地图片。再次点击修改图片。 1 图片限制 图片大小不超过2M 仅能上传PNG JPG JPEG类型图片 建议上传200200或300300尺寸的图片 2 异常提示 图片过大上传失败 格式错误上传失败 3.3 套餐描述选填限制输入最大不超过200个汉字、字母大小写、阿拉伯数字。不符合限制提示“套餐描述输入不符请输入少于200个字” 接口设计 需要用的接口 根据分类id查询菜品套餐管理中新增菜单接口上传图片(完成)根据类型查询分类(完成) 根据分类id查询菜品 套餐管理中新增菜单接口 setmeal和setmeal_dish表设计 setmeal表为套餐表用于存储套餐的信息。 字段名数据类型说明备注idbigint主键自增namevarchar(32)套餐名称唯一category_idbigint分类id逻辑外键pricedecimal(10,2)套餐价格imagevarchar(255)图片路径descriptionvarchar(255)套餐描述statusint售卖状态1起售 0停售create_timedatetime创建时间update_timedatetime最后修改时间create_userbigint创建人idupdate_userbigint最后修改人id setmeal_dish表为套餐菜品关系表用于存储套餐和菜品的关联关系。 字段名数据类型说明备注idbigint主键自增setmeal_idbigint套餐id逻辑外键dish_idbigint菜品id逻辑外键namevarchar(32)菜品名称冗余字段pricedecimal(10,2)菜品单价冗余字段copiesint菜品份数 2.2 代码开发 根据分类id查询菜品新增套餐接口 2.2.1 根据分类id查询菜品 DishController /*** 根据分类id查询菜品* param categoryId* return */ GetMapping(/list) ApiOperation(根据分类id查询菜品) public ResultListDish list(Long categoryId){ListDish list dishService.list(categoryId);return Result.success(list); }DishService /*** 根据分类id查询菜品* param categoryId* return */ ListDish list(Long categoryId);DishServiceImpl /*** 根据分类id查询菜品* param categoryId* return */ public ListDish list(Long categoryId) {Dish dish Dish.builder().categoryId(categoryId).status(StatusConstant.ENABLE).build();return dishMapper.list(dish); }DishMapper /*** 动态条件查询菜品* param dish* return */ ListDish list(Dish dish);DishMapper.xml select idlist resultTypeDish parameterTypeDishselect * from dish whereif testname ! nulland name like concat(%,#{name},%)/ifif testcategoryId ! nulland category_id #{categoryId}/ifif teststatus ! nulland status #{status}/if/whereorder by create_time desc /select2.2.2 新增套餐接口 SetmealController /*** 套餐管理*/ RestController RequestMapping(/admin/setmeal) Api(tags 套餐相关接口) Slf4j public class SetmealController {Autowiredprivate SetmealService setmealService;/*** 新增套餐* param setmealDTO* return*/PostMappingApiOperation(新增套餐)public Result save(RequestBody SetmealDTO setmealDTO) {setmealService.saveWithDish(setmealDTO);return Result.success();} }SetmealService public interface SetmealService {/*** 新增套餐同时需要保存套餐和菜品的关联关系* param setmealDTO*/void saveWithDish(SetmealDTO setmealDTO); }SetmealServiceImpl /*** 套餐业务实现*/ Service Slf4j public class SetmealServiceImpl implements SetmealService {Autowiredprivate SetmealMapper setmealMapper;Autowiredprivate SetmealDishMapper setmealDishMapper;Autowiredprivate DishMapper dishMapper;/*** 新增套餐同时需要保存套餐和菜品的关联关系* param setmealDTO*/Transactionalpublic void saveWithDish(SetmealDTO setmealDTO) {Setmeal setmeal new Setmeal();BeanUtils.copyProperties(setmealDTO, setmeal);//向套餐表插入数据setmealMapper.insert(setmeal);//获取生成的套餐idLong setmealId setmeal.getId();ListSetmealDish setmealDishes setmealDTO.getSetmealDishes();setmealDishes.forEach(setmealDish - {setmealDish.setSetmealId(setmealId);});//保存套餐和菜品的关联关系setmealDishMapper.insertBatch(setmealDishes);} }SetmealMapper 新增套餐 /*** 新增套餐* param setmeal */ AutoFill(OperationType.INSERT) void insert(Setmeal setmeal);SetmealMapper.xml insert idinsert parameterTypeSetmeal useGeneratedKeystrue keyPropertyidinsert into setmeal(category_id, name, price, status, description, image, create_time, update_time, create_user, update_user)values (#{categoryId}, #{name}, #{price}, #{status}, #{description}, #{image}, #{createTime}, #{updateTime},#{createUser}, #{updateUser}) /insertSetmealDishMapper 保存套餐和菜品的关联关系 /*** 批量保存套餐和菜品的关联关系* param setmealDishes */ void insertBatch(ListSetmealDish setmealDishes);SetmealDishMapper.xml insert idinsertBatch parameterTypelistinsert into setmeal_dish(setmeal_id,dish_id,name,price,copies)valuesforeach collectionsetmealDishes itemsd separator,(#{sd.setmealId},#{sd.dishId},#{sd.name},#{sd.price},#{sd.copies})/foreach /insert2.3 功能测试 3 套餐分页查询 3.1 需求分许和设计 产品原型和业务规则 根据页码进行分页展示每页展示10条数据可以根据需要按照套餐名称、分类、售卖状态进行查询 接口设计 查看Apifox 3.2 代码实现 这个建议参考之前实现的分页功能 SetmealController /*** 分页查询* param setmealPageQueryDTO* return */ GetMapping(/page) ApiOperation(分页查询) public ResultPageResult page(SetmealPageQueryDTO setmealPageQueryDTO) {PageResult pageResult setmealService.pageQuery(setmealPageQueryDTO);return Result.success(pageResult); }SetmealService /*** 分页查询* param setmealPageQueryDTO* return */ PageResult pageQuery(SetmealPageQueryDTO setmealPageQueryDTO);SetmealServiceImpl /*** 分页查询* param setmealPageQueryDTO* return */ public PageResult pageQuery(SetmealPageQueryDTO setmealPageQueryDTO) {int pageNum setmealPageQueryDTO.getPage();int pageSize setmealPageQueryDTO.getPageSize();PageHelper.startPage(pageNum, pageSize);PageSetmealVO page setmealMapper.pageQuery(setmealPageQueryDTO);return new PageResult(page.getTotal(), page.getResult()); }SetmealMapper /*** 分页查询* param setmealPageQueryDTO* return */ PageSetmealVO pageQuery(SetmealPageQueryDTO setmealPageQueryDTO);SetmealMapper.xml select idpageQuery resultTypecom.sky.vo.SetmealVOselects.*,c.name categoryNamefromsetmeal sleft joincategory cons.category_id c.idwhereif testname ! nulland s.name like concat(%,#{name},%)/ifif teststatus ! nulland s.status #{status}/ifif testcategoryId ! nulland s.category_id #{categoryId}/if/whereorder by s.create_time desc /select3.3 测试 关于删除套餐修改套餐套餐的起售与停售放在下一篇笔记了。
http://www.pierceye.com/news/563497/

相关文章:

  • 网站访客抓取新媒体营销课程心得体会
  • 网站建设售前域名注册
  • 运动器材网站开发方案失信被执行人名单查询系统
  • 深圳商业网站建设模板网站建设worldpress
  • 宁波网站排名网站开发 哪家好
  • 做网站的软件工程师网站积分程序怎么建设
  • ps网站轮播图怎么做动漫制作专业的来源
  • 怎么知道一个网站是谁做的建筑认证
  • 网站关键词优化排名公司网站备案的意思
  • 怎么把qq空间做成企业网站医疗网站设计
  • 个人博客网站需求分析上海最大企业前十名
  • 兴义之窗网站怎么做网页界面设计的类别
  • 黄南州网站建设公司安徽省建设厅执业资格注册中心网站
  • wordpress布置网站教程wordpress it模板下载地址
  • 网站首页栏目设置宿州建设网站公司哪家好
  • 西安网站建设怎么接单做社交的招聘网站
  • 实训课网站开发个人小结横岗做网站
  • 网站集约化建设管理方案wordpress加cnzz统计在那里加
  • 重庆知道推广网站方法青岛网络推广的有哪些公司
  • 自己做网站服务器要多少钱特殊字体
  • 网站建设合同 协议书网站建设工具有哪些
  • 网站建设的基本条件网站建设策划案怎么写
  • 知乎网站开发用的语言郑州建设网站哪家好
  • 企业官网建站费用长沙做无痛肠镜东大医院l网站
  • 建网站资料wordpress 读书模板
  • 网站建设初学者教程成华区微信网站建设公司
  • 沈阳网站建设-中国互联商城页面
  • 成交型网站倡导公司进贤南昌网站建设公司
  • 网站跟软件有什么区别是什么点击器原理
  • 网站建设项目策划书范文杭州 网站开发公司