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

电子商务网站建设需要哪些步骤聚成网站建设

电子商务网站建设需要哪些步骤,聚成网站建设,zencart添加wordpress,php网站开发方案背景 最近在做一个权限可见的功能。每一个订单都有创建人和创建人部门,而查询订单时可以查看自己的或者自己可见部门的。 比如你可以看电商组下的订单,那么自然可以看到电商A组下的订单。 使用ES写一个demo 搭建ES及数据初始化 docker run -p 9200:9…

背景

最近在做一个权限可见的功能。每一个订单都有创建人和创建人部门,而查询订单时可以查看自己的或者自己可见部门的。
比如你可以看电商组下的订单,那么自然可以看到电商A组下的订单。

使用ES写一个demo

搭建ES及数据初始化

docker run -p 9200:9200 -p 9300:9300 --name es-container -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:8.10.3

ES索引的映射

{"order": {"mappings": {"properties": {"createrId": {"type": "keyword"},"department": {"type": "keyword"},"departmentTree": {  "type": "keyword"},"id": {"type": "keyword"},"name": {"type": "text"}}}}
}

其中数据如下
在这里插入图片描述

方案1

场景:你可以看电商组(departMentId = 1)下的订单,那么自然可以看到电商A组下(departMentId = 2,3)的订单。

我通过查询你的权限可以获取大部门电商组(departMentId = 1),然后查询大部门的子部门,从而拿到了部门的全集。

代码略,不推荐,因为部门ID多。

方案2

场景:你可以看电商组(departMentId = 1)下的订单,那么自然可以看到电商A组下(departMentId = 2,3)的订单。

但是我在订单上存储的是这个人的部门链,如下图departmentTree
在这里插入图片描述

实操

<dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><version>7.17.3</version></dependency>
import org.apache.http.HttpHost;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.builder.SearchSourceBuilder;import java.io.IOException;/*** @author chaird* @create 2020-08-27 21:42*/
public class Start {public static void main(String[] args) throws Exception {// 创建 REST 高级客户端RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(new HttpHost("101.200.123.220", 9200, "http")));try {// 创建搜索请求SearchRequest searchRequest = new SearchRequest("order");SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();//id = 1//boolQueryBuilder.filter(QueryBuilders.termQuery("id", 1));//department = 1//boolQueryBuilder.filter(QueryBuilders.termQuery("department", 1));// id in (1,2)//boolQueryBuilder.filter(QueryBuilders.termsQuery("id", Arrays.asList(1,2)));// db departmentTree =[1,2,3]  命中一个就行,部门查询boolQueryBuilder.filter(QueryBuilders.termQuery("departmentTree", 1));// where id = 1 or department = 3
//            BoolQueryBuilder orFilter = QueryBuilders.boolQuery();
//            orFilter.should(QueryBuilders.termQuery("id", 1));
//            orFilter.should(QueryBuilders.termQuery("department", 3));
//            boolQueryBuilder.filter(orFilter);searchSourceBuilder.query(boolQueryBuilder);//System.out.println(searchSourceBuilder.toString());searchRequest.source(searchSourceBuilder);// 执行搜索请求SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);// 处理搜索结果for (SearchHit hit : searchResponse.getHits().getHits()) {System.out.println(hit.getSourceAsString());}} catch (IOException e) {e.printStackTrace();} finally {try {// 关闭客户端client.close();} catch (IOException e) {e.printStackTrace();}}}
}

在这里插入图片描述

http://www.dtcms.com/a/474950.html

相关文章:

  • 前端开发指南,前端开发需要学什么
  • 一个网站设计的费用搭建影视网站违法
  • 深入解析 YOLO v2
  • 网站建设开票计量单位网站建设宣传素材
  • wordpress插件怎么使用兰州搜索引擎优化
  • Mysql初阶第七讲:Mysql复合查询
  • 代码随想录 101.对称二叉树
  • 深圳网站建设哪家比较专业大学城网站开发公司
  • 制作静态链接库并使用
  • 西方设计网站vs2010网站开发与发布
  • 网站维护工作的基本内容施工企业质量管理体系认证几年
  • 网站建设教程pdf下载企业官网网页设计
  • 重启MySQL,为何重启后MySQL数据“回滚”了?
  • 非洲购物网站排名文创产品设计包括哪些方面
  • Linux 文件内容查看与编辑
  • 2022 CSP-J复赛题
  • 【cubeide】IIC通信
  • python学习之访问模式和文件定位操作
  • CTF攻防世界WEB精选基础入门:simple_php
  • CodexField 热度登顶:内容资产化赛道的加速信号
  • 00_k8s容器编排系统
  • 广西柳州网站制作公司厦门做网站排名
  • 算法学习 02
  • 广西建设监理协会官网站珠海响应式网站建设推广公司
  • 机器学习实践项目(一)- Rossman商店销售预测 - 特征工程
  • 网站首页轮播图片wordpress不支持中文
  • Blender经典像素风模拟插件 Drips Psx Efx – Playstation 1 Effects V1.4
  • 网站 备案 固话福州网站设计软件公司
  • 达梦数据库版本升级方案
  • 【开题答辩全过程】以 北上广咖啡门店分布与销售数据分析和可视化为例,包含答辩的问题和答案