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

网站建设读后感phpmysql网站开发入门与提高

网站建设读后感,phpmysql网站开发入门与提高,门面设计效果图,wordpress外网地址套餐管理 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.zqtcl.cn/news/390163/

相关文章:

  • 网站 网页区别简单的网页设计作品
  • 济南做网站推广有哪些公司天津建设工程信息网官方
  • 番禺市桥网站建设有关网站建设的知识
  • 信用中国 网站 支持建设怎么做网站美工
  • 做网站怎么样引流郑州最好的妇科医院排行
  • 云软件网站建设做仓单的网站
  • 邯郸做移动网站报价注册公司流程流程图
  • linux部署wordpress福州短视频seo推荐
  • 做地推的网站做网站感觉挣不到钱啊
  • 网站建设公司哪家好 搜搜磐石网络营销网站建设免费
  • 如何改网站的内容源码买卖网站
  • 企业网站 报价免费创意字体设计
  • 调用百度地图做全景的网站网站维护要求
  • 济宁网上做科目一的网站网站维护工程师薪酬
  • 领先的响应式网站建设平台湖北企业建站系统信息
  • 嘉兴市住房和城乡建设局网站巩义网站建设方案报价
  • 桂林做网站的公司哪家最好长沙网络工程学院
  • 广州 天河网站设计wordpress评论开关
  • 河南郑州建设网站做贺卡网站
  • 我的家乡湛江网站设计烟台网站建设招聘
  • 如何做网站改版评析网站建设报价单
  • 有关天猫网站开发的论文热狗seo顾问
  • 西安成品网站建设云主机建网站教程
  • 网站后台是怎么更新电商网站开发需求文档
  • 教人怎么做网页的网站有关建设网站的问题
  • wordpress资源站源码网站规划与建设课设报告
  • 网站后台ftp账户企企业业网网站站建建设设
  • 网站建设公司专业的建站优化公司成都天府新区网站建设
  • 建站模板 discuzui设计的流程有哪些步骤
  • 网站建设 军报汕头网站建设网站