莆田网站建站,行业网站推广外包,jpress wordpress,网络营销的主要推广方式“大家好#xff0c;我是雄雄#xff0c;欢迎关注微信公众号#xff1a;雄雄的小课堂”今天#xff0c;记录一篇技术文章吧#xff0c;也是解决了好久才解决掉的#xff08;说来也惭愧#xff09;。涉及技术前端#xff1a;vue#xff0c;element ui后端框架#xff… “大家好我是雄雄欢迎关注微信公众号雄雄的小课堂”今天记录一篇技术文章吧也是解决了好久才解决掉的说来也惭愧。涉及技术前端vueelement ui后端框架bladex其中后端涉及到的技术有springboot,srping mvc,mybatis plus,shiro,SpringCloud等其实这个bladex封装的还是挺复杂的有些地方你若是想在他的基础上扩展自己的些内容能改到想吐尤其是前端而且官方的文档有和没有几乎都一样说的一点都不详细……需求说明系统中有模板表template和模板类型表templatetype,两者关系是多对一的关系也就是一个模板类型中有多个模板在查询展示所有模板信息的时候需要显示的是模板类型名而不是类型编号如图所示乍一看是不是很简单只需要在mybatis的mapper文件中配置双方之间的映射关系就可以我刚开始也是这么想的但是配置完之后发现不可以模板类型名显示不出来。然后换了一种思路原理就是在查询模板的同时按照模板表的外键查询模板名赋值给TemplateVo类中然后在前端获取。思路三言两语就说完了但是做起来确实麻烦下面看看如何实现的也算是做个记录忘记了回头看看。前端首先是前端的template.vue页面,修改column中的模板类型相关内容column: [{label: 模板编号,prop: id,hide:true,rules: [{required: true,message: 模板编号,trigger: blur}]},{label: 模板名称,prop: tname,rules: [{required: true,message: 请输入模板名称,trigger: blur}]},{label: 类型,prop: typename,hide:false,rules: [{required: true,message: 请输入类型,trigger: blur}]},{label: 目标,prop: tmubiao,rules: [{required: true,message: 请输入目标,trigger: blur}]},{label: 强度,prop: tqiangdu,rules: [{required: true,message: 请输入强度,trigger: blur}]},{label: 备注,prop: tbeizhu,rules: [{required: true,message: 请输入备注,trigger: blur}]},{label: 创建者,prop: userName,rules: [{required: true,message: 请输入创建模板的人,trigger: blur}]},{type: date,label: 创建时间,display: true,format: yyyy-MM-dd hh:mm:ss,valueFormat: yyyy-MM-dd hh:mm:ss,prop: tdate},]
前端其余都不用在改动了。后端1.在模板类型的mapper文件TemplatetypeMapper中新加根据编号查询名称的接口/*** 根据编号查询接口* param id* return*/String typeNameList (Integer id);
2.在模板类型的配置文件TemplatetypeMapper.xml中添加sql映射select idtypeNameList resultTypestringselect typename from hbv_templateType where id #{id}/select
3.在TemplateVo中新加字段//模板类型名private String typename;
4.在ITemplatetypeService中添加如下接口:/*** 根据编号查询名称* param id* return*/String typeNameList (Integer id);
5.在TemplatetypeServiceImpl中添加对ITemplatetypeService的实现Overridepublic String typeNameList(Integer id) {return baseMapper.typeNameList(id);}
6.在TemplateWrapper文件中添加如下代码//模板类型的业务接口private static final ITemplatetypeService templatetypeService;//用户的业务接口private static final IUserService userService;static{templatetypeService SpringUtil.getBean(ITemplatetypeService.class);userService SpringUtil.getBean(IUserService.class);}Overridepublic TemplateVO entityVO(Template template) {TemplateVO templateVO Objects.requireNonNull(BeanUtil.copy(template, TemplateVO.class));String typename templatetypeService.typeNameList(template.getTypeid());String userName userService.getUserNameById(template.getTcid());//String userName templateVO.setTypename(typename);templateVO.setUserName(userName);return templateVO;}
7.最后修改控制器中的list方法/*** 分页 模板表*/GetMapping(/list)ApiOperationSupport(order 2)ApiOperation(value 分页, notes 传入template)public RIPageTemplateVO list(Template template, Query query) {QueryWrapperTemplate queryWrapper Condition.getQueryWrapper(template);IPageTemplate pages templateService.page(Condition.getPage(query), queryWrapper);return R.data(TemplateWrapper.build().pageVO(pages));}
好了至此终于完事了运行就可以了