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

免费检测网站seo许昌市住房城乡建设局网站

免费检测网站seo,许昌市住房城乡建设局网站,广元网站建设公司,怎样自己建一个网站文章目录 界面效果界面实现工具js页面首页让文字只显示两行路由跳转传递对象将商品分为两列显示使用中划线划掉原价 后端商品controllerservicemappersql 界面效果 【说明】 界面中商品的图片来源于闲鱼#xff0c;若侵权请联系删除关于商品分类页面的实现#xff0c;请在我… 文章目录 界面效果界面实现工具js页面首页让文字只显示两行路由跳转传递对象将商品分为两列显示使用中划线划掉原价 后端商品controllerservicemappersql 界面效果 【说明】 界面中商品的图片来源于闲鱼若侵权请联系删除关于商品分类页面的实现请在我的Uniapp系列文章中寻找来查看关于页面中悬浮按钮的实现请在我的Uniapp系列文章中寻找来查看 界面实现 工具js 该工具类的作用是给定一个图片的url地址计算出图片的高宽比计算高宽比的作用是让图片可以按照正常比例显示 /*** 获取uuid*/ export default {/*** 获取高宽比 乘以 100%*/getAspectRatio(url) {uni.getImageInfo({src: url,success: function(res) {let aspectRatio res.height * 100.0 / res.width;// console.log(aspectRatio: aspectRatio);return aspectRatio %;}});}, }页面 首页 templateview classcontentview styledisplay: flex;align-items: center;u-search placeholder请输入商品名称 v-modelsearchForm.keyword searchlistProductVo :showActionfalse:clearabledtrue/u-searchtext classiconfont stylefont-size: 35px; clickselectCategory()#xe622;/text/viewu-row customStylemargin-top: 10px gutter10 alignstart v-ifproductList[0].length0loadDatafalseu-col span6 classcol v-for(data,index) in productList :keyindexview classproductVoItem v-for(productVo,index1) in data :keyindex1clickseeProductDetail(productVo)u--image v-ifproductVo.picList!nullproductVo.picList.length0 :showLoadingtrue:srcproductVo.picList[0] width100% :heightgetAspectRatio(productVo.picList[0])radius10 modewidthFix/u--image!-- u--image v-else :showLoadingtrue :srcsrc clickclick/u--image --view classproductMestext classproductName【{{productVo.name}}】/texttext{{productVo.descriptionnull?:productVo.description}}/text/viewview styledisplay: flex;align-items: center;!-- 现价 --view classprice¥text classnumber{{productVo.price}}/text/{{productVo.unit}}/viewview stylewidth: 10px;/view!-- 原价 --view classoriginPrice¥{{productVo.originalPrice}}/{{productVo.unit}}/view/viewview styledisplay: flex;align-items: center;u--image :srcproductVo.avatar width20 height20 shapecircle/u--imageview stylewidth: 10px;/viewview {{productVo.nickname}}/view/view/view/u-col/u-rowu-empty v-ifproductList[0].length0loadDatafalse modedata texColor#ffffff iconSize180iconColor#D7DEEB text所选择的分类没有对应的商品,请重新选择 textColor#D7DEEB textSize18 marginTop30/u-emptyview stylemargin-top: 20px; v-ifloadDatatrueu-skeleton :loadingtrue :animatetrue rows10/u-skeleton/view!-- 浮动按钮 --FloatButton clickcellMyProduct()u--image :srcfloatButtonPic shapecircle width60px height60px/u--image/FloatButton/view /templatescriptimport FloatButton from /components/FloatButton/FloatButton.vue;import {listProductVo} from /api/market/prodct.js;import pictureApi from /utils/picture.js;export default {components: {FloatButton},onShow: function() {let categoryNameList uni.getStorageSync(categoryNameList);if (categoryNameList) {this.categoryNameList categoryNameList;this.searchForm.productCategoryId uni.getStorageSync(productCategoryId);this.searchForm.keyword this.getCategoryLayerName(this.categoryNameList);uni.removeStorageSync(categoryNameList);uni.removeStorageSync(productCategoryId);this.listProductVo();}},data() {return {title: Hello,// 浮动按钮的图片floatButtonPic: require(/static/cellLeaveUnused.png),searchForm: {// 商品搜索关键词keyword: ,productCategoryId: undefined},productList: [[],[]],loadData: false,}},onLoad() {},created() {this.listProductVo();},methods: {/*** 查询商品vo集合*/listProductVo() {this.loadData true;listProductVo(this.searchForm).then(res {this.loadData false;// console.log(listProductVo: JSON.stringify(res))let productVoList res.rows;this.productList [[],[]];for (var i 0; i productVoList.length; i) {if (i % 2 0) {// 第一列数据this.productList[0].push(productVoList[i]);} else {// 第二列数据this.productList[1].push(productVoList[i]);}}})},/*** 跳转到卖闲置页面*/cellMyProduct() {console.log(我要卖闲置);uni.navigateTo({url: /pages/sellMyProduct/sellMyProduct})},/*** 获取高宽比 乘以 100%*/getAspectRatio(url) {return pictureApi.getAspectRatio(url);},/*** 选择分类*/selectCategory() {uni.navigateTo({url: /pages/sellMyProduct/selectCategory})},/*** 获取商品名称*/getCategoryLayerName() {let str ;for (let i 0; i this.categoryNameList.length - 1; i) {str this.categoryNameList[i] /;}return str this.categoryNameList[this.categoryNameList.length - 1];},/*** 查看商品的详情*/seeProductDetail(productVo) {// console.log(productVo:JSON.stringify(productVo))uni.navigateTo({url: /pages/product/detail?productVo encodeURIComponent(JSON.stringify(productVo))})}}} /scriptstyle langscss.content {padding: 20rpx;.col {width: 50%;}.productVoItem {margin-bottom: 20px;.productMes {overflow: hidden;text-overflow: ellipsis;display: -webkit-box;/* 显示2行 */-webkit-line-clamp: 2;-webkit-box-orient: vertical;.productName {font-weight: bold;}}.price {color: #ff0000;font-weight: bold;.number {font-size: 22px;}}.originPrice {color: #A2A2A2;font-size: 15px;// 给文字添加中划线text-decoration: line-through;}}} /style让文字只显示两行 overflow: hidden; text-overflow: ellipsis; display: -webkit-box; /* 显示2行 */ -webkit-line-clamp: 2; -webkit-box-orient: vertical;路由跳转传递对象 因为首页已经查询到商品的很多信息了点击查看商品详情的时候很多信息不需要再查询一遍了可以直接将商品的已知信息通过路由传递到新的页面去需要注意的时候将对象作为参数传递之前需要先将对象进行编码 uni.navigateTo({url: /pages/product/detail?productVo encodeURIComponent(JSON.stringify(productVo)) })将商品分为两列显示 首先将查询到的商品分为两组 let productVoList res.rows; this.productList [[],[] ]; for (var i 0; i productVoList.length; i) {if (i % 2 0) {// 第一列数据this.productList[0].push(productVoList[i]);} else {// 第二列数据this.productList[1].push(productVoList[i]);} }然后在布局中使用行列布局即可即使用一行两列的方式来显示商品信息 使用中划线划掉原价 // 给文字添加中划线 text-decoration: line-through;后端 商品 controller /*** 查询商品Vo列表*/PreAuthorize(ss.hasPermi(market:product:list))PostMapping(/listProductVo)ApiOperation(获取商品列表)public TableDataInfo listProductVo(RequestBody ProductVo productVo) {startPage();if (productVo.getProductCategoryId() ! null) {// --if-- 当分类不为空的时候只按照分类来搜索productVo.setKeyword(null);}ListProductVo list productService.selectProductVoList(productVo);return getDataTable(list);}service /*** 查询商品Vo列表** param productVo* return*/ Override public ListProductVo selectProductVoList(ProductVo productVo) { // ListProductVo productVoList new ArrayList();ListProductVo productVoList baseMapper.selectProductVoList(productVo);///设置每个商品的图片// 获取所有商品的idListLong productIdList productVoList.stream().map(item - {return item.getId();}).collect(Collectors.toList());// 查询出所有商品的图片if (productIdList.size() 0) {ListPicture pictureList pictureService.selectPictureListByItemIdListAndType(productIdList, PictureType.PRODUCT.getType());MapLong, ListString itemIdAndPicList new HashMap();for (Picture picture : pictureList) {if (!itemIdAndPicList.containsKey(picture.getItemId())) {ListString picList new ArrayList();picList.add(picture.getAddress());itemIdAndPicList.put(picture.getItemId(), picList);} else {itemIdAndPicList.get(picture.getItemId()).add(picture.getAddress());}}// 给每个商品设置图片for (ProductVo vo : productVoList) {vo.setPicList(itemIdAndPicList.get(vo.getId()));}}return productVoList; }mapper void starNumDiffOne(Param(productId) Long productId);sql select idselectProductVoList parameterTypeProductVo resultMapProductVoResultSELECTp.id,p.NAME,p.description,p.original_price,p.price,p.product_category_id,pc.NAME AS productCategoryName,p.user_id,u.user_name as username,u.nick_name as nickname,u.avatar as avatar,p.reviewer_id,u1.user_name as reviewerUserName,p.fineness,p.unit,p.STATUS,p.is_contribute,p.functional_status,p.brand_id,b.NAME AS brandNameFROMproduct AS pLEFT JOIN product_category AS pc ON p.product_category_id pc.idLEFT JOIN brand AS b ON p.brand_id b.idLEFT JOIN sys_user AS u ON p.user_id u.user_idLEFT JOIN sys_user AS u1 ON p.reviewer_id u1.user_idwhereif testkeyword ! null and keyword ! and p.name like concat(%, #{keyword}, %)/ifif testkeyword ! null and keyword ! or p.description like concat(%, #{keyword}, %)/ifif testproductCategoryId ! null and productCategoryId ! and p.product_category_id #{productCategoryId}/if/where/select
http://www.dnsts.com.cn/news/201249.html

相关文章:

  • 小企业网站建设5000块贵吗工程公司管理制度
  • 景区门户网站建设的必要性dw网页制作教程局中对齐
  • 网站运营与管理的对策淘宝联盟 做网站
  • 公司做网站一定要钱吗网络关键词
  • 黄岐建网站网站无障碍建设报告
  • 医药网站建设中图片wordpress视频模块
  • 建设信用卡银行积分商城网站公司域名备案网站名称
  • 计算机网站开发项目深圳4a广告公司有哪些
  • cnnic网站洛阳400电话洛阳网站seo
  • 雄安建站服务书画院网站建设
  • 百度网站入口贵州门户网站建设
  • 肇庆东莞网站建设郑州哪个医院看妇科病最好的医院
  • 网站开发常用图标企业查询软件排行榜
  • 云网站制作的流程图淘宝权重查询
  • 购物网站建设投资预算网站的引导页面是什么意思
  • wordpress全站pjax搬瓦工搭建wordpress
  • 网站后台欢迎界面印刷行业网站建设
  • 情人做网站海门住房和城乡建设局网站
  • 手机网站吧做网站后台服务器什么最好
  • 长尾关键词爱站凡科互动游戏作弊软件
  • 做网站开发人员架构中企动力 网站报价
  • html5模板网站上海网架公司
  • WordPress网站转HTPPSwordpress ftp 端口
  • 安徽省建设厅证书查询官方网站石家庄网站建设wsjz
  • 自己可以建网站吗wordpress 页面id
  • 定南网站建设qq wordpress登陆
  • 西安网站设计制作多少钱高中男女做那个视频网站
  • 加强网站内容建设创新培训机构网站源码
  • 中英文网站怎么做国家企业信用公示(上海)
  • 网络服务提供者不履行法律行政法规规定的人才网站的seo怎么做