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

住房和城乡建设部建设司网站首页10大品牌网

住房和城乡建设部建设司网站首页,10大品牌网,如何创造免费网站,巴南市政建设网站一、说明 在电商网站中,订单的支付作为直接与营销收入挂钩的一环,在业务流程中非常重要。对于订单而言,为了正确控制业务流程,也为了增加用户的支付意愿,网站一般会设置一个支付失效时间,超过一段时间不支…

一、说明

在电商网站中,订单的支付作为直接与营销收入挂钩的一环,在业务流程中非常重要。对于订单而言,为了正确控制业务流程,也为了增加用户的支付意愿,网站一般会设置一个支付失效时间,超过一段时间不支付的订单就会被取消。另外,对于订单的支付,我们还应保证用户支付的正确性,这可以通过第三方支付平台的交易数据来做一个实时对账。

二、思路

对于订单支付事件,用户支付完成其实并不算完,我们还得确认平台账户上是否到账了。而往往这会来自不同的日志信息,所以我们要同时读入两条流的数据来做合并处理。

三、数据准备

订单数据从OrderLog.csv中读取,交易数据从ReceiptLog.csv中读取
JavaBean类的准备

四、代码

package com.lyh.flink06;import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.streaming.api.functions.co.KeyedCoProcessFunction;
import org.apache.flink.util.Collector;import java.util.HashMap;
import java.util.Map;public class Project_Order {public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();env.setParallelism(2);SingleOutputStreamOperator<OrderEvent> orderEventString = env.readTextFile("input/OrderLog.csv").map(line -> {String[] data = line.split(",");return new OrderEvent(Long.valueOf(data[0]),data[1],data[2],Long.valueOf(data[3]));}).filter(log -> "pay".equals(log.getEventType()));SingleOutputStreamOperator<TxEvent> txEventString = env.readTextFile("input/ReceiptLog.csv").map(line -> {String[] data = line.split(",");return new TxEvent(data[0],data[1],Long.valueOf(data[2]));});orderEventString.connect(txEventString).keyBy(OrderEvent::getTxId,TxEvent::getTxId).process(new KeyedCoProcessFunction<String, OrderEvent, TxEvent, String>() {Map<String,OrderEvent> OrderEventmap = new HashMap<>();Map<String,TxEvent> TxEventmap = new HashMap<>();@Overridepublic void processElement1(OrderEvent value,Context ctx,Collector<String> out) throws Exception {TxEvent txEvent = TxEventmap.get(ctx.getCurrentKey());if (txEvent != null) {out.collect("订单" + value.getOrderId() + "对账成功");}else {OrderEventmap.put(ctx.getCurrentKey(),value);}}@Overridepublic void processElement2(TxEvent value,Context ctx,Collector<String> out) throws Exception {OrderEvent orderEvent = OrderEventmap.get(ctx.getCurrentKey());if (orderEvent != null) {out.collect("订单" + orderEvent.getOrderId() + "对账成功");}else {TxEventmap.put(ctx.getCurrentKey(),value);}}}).print();env.execute();}
}

五、结果

在这里插入图片描述

http://www.yayakq.cn/news/43353/

相关文章:

  • 网站建设 外包个人简历在线制作免费
  • 彩票网站怎么做ip管理python编程软件官网
  • 惠州品牌网站建设公司哪里有专业的网站建设企业
  • 网站开发项目周期的撰写网站建设技术解决方案
  • 母婴网站源码 带采集北京的广告公司网站建设
  • 腾宁网络做网站什么网站可以做单词书
  • n加1网站建设广州建站网站
  • 怎么根据别人的网站做自己的网站电子商务实验网站建设实训过程
  • 网站后台管理js长沙长沙h5网站建设
  • 12306网站开始是谁开发的邢台做网站备案
  • php网站开发权限管理wordpress写文章方便
  • thinkphp 门户网站wordpress哪些插件
  • 郑州做网站推广哪家好wordpress 远程数据库
  • 网站编辑工作好做吗东西湖区网站建设公司
  • 小白怎么学做网站wordpress论坛怎么用
  • 金融网站策划方案找人做个app需要多少钱
  • 电子商务网站建设 试题区块链网站建设
  • dedecms 资源类网站模板廊坊seo关键词
  • 网站建设的基本步骤有哪些wordpress微信登录插件下载失败
  • 网站建设计划设计方案注册公司需要费用吗
  • 网站需求分析的主要内容哪个网站内链建设好
  • 我是做化工回收的做哪个网站比较好wordpress白屏
  • 布吉网站建设公司wordpress上传pdf文件
  • 百度推广怎么做的网站诸城做网站公司
  • wordpress上传媒体文件大小修改网站从哪些方面做优化
  • 网站建设与管理基础及实训(php版)公司手机版网站模板免费下载
  • 什么行业适合做网站推广合肥晨曦网站建设
  • 自己做营销型网站网站开发需求网
  • 临沂建站平台网站网站设计的公司
  • 网站中竖导航栏怎么做在线制作国庆头像