Commit e6057a86 by 陈浩建

单宽下单接口参数调整,selectOrder调整

parent 799bf539
......@@ -155,7 +155,6 @@ public class DankuanController {
orderView.setProductName(product.getProductTitle());
orderView.setOrderDate(new Date());
orderView.setOrderUniversityName(product.getProductUniversity());
orderView.setStatus(OrderStatus.NOTPAID.getId());
orderView.setHehuorenId(partner);
orderView.setOrderRegion(product.getProductRegion());
orderView.setPayType("1");
......@@ -214,7 +213,13 @@ public class DankuanController {
String uuid = UUID.randomUUID().toString();
String id = uuid.split("-")[0] + uuid.split("-")[1];
order.setId(id);
order.setOrderNumber(orderView.getOrderSeq().toString());
order.setId(id);
SimpleDateFormat sd = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat sd2 = new SimpleDateFormat("yyyyMM");
String orderNumber = "YRYM" + sd.format(new Date()) + id.substring(1, 12);
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
order.setOrderNumber(orderNumber);
order.setOrderStatus(OrderStatus.NOTPAID.getName().toString());
order.setHehuorenId(userId);
order.setCustomerName(orderView.getOrderName());
......@@ -470,7 +475,7 @@ public class DankuanController {
// map.put("BACKDROPURL", Constant.TOMCATURL + "/dankuan/toSubmisOrderPreser");
//测试地址
map.put("BACKDROPURL", "http://3715zj2369.qicp.vip/ciop/dankuan/toSubmisOrderPreser.do");
map.put("BACKDROPURL", "http://3715zj2369.qicp.vip/ciop/dankuan/toSubmisOrderPreser");
String str = "ORDERSEQ=" + orderView.getOrderSeq() + "&ORDERDATE=" + ft.format(orderdate) + "&ORDERAMOUNT=" + orderView.getWebOrderAmount() + "&KEY=" + Constant.APPK;//商户标识
......@@ -515,33 +520,6 @@ public class DankuanController {
if (StringUtils.isNotBlank(msg) && msg.equals("success")) {
dataMapping.put("status", "未支付");
orderViewMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping), wrapper);
Order order = new Order();
order.setId(id);
order.setOrderNumber(orderView.getOrderSeq());
order.setOrderStatus(OrderStatus.NOTPAID.getName());
order.setHehuorenId(userId);
order.setCustomerName(orderView.getOrderName());
order.setContactNumber(orderView.getOrderPhone());
order.setIdCard(orderView.getOrderNumber());
order.setCreateTime(new Date());
order.setUserType("5");
order.setNetNumber(orderView.getOrderCustomerAccount());
order.setNetPassword(orderView.getOrderCustomerPwd());
order.setUserSchool(orderView.getOrderUniversityName());
order.setExpenses(orderView.getOrderSetMeal());
order.setKdOrderId(orderView.getOrderSeq());
SysUser sysUser = sysUserMapper.selectById(userId);
order.setHehuorenPhone(sysUser.getPhone());
String schoolId = appMapper.selectSchoolId(userId);
School school = schoolMapper.selectById(schoolId);
order.setHehuorenSchool(school.getSchoolName());
order.setHehuorenName(sysUser.getName());
order.setHehuorenArea(sysUser.getSubstName());
List<String> userId1 = appMapper.selectsupervisorBySchool(schoolId);
SysUser user = sysUserMapper.selectById(userId1.get(0));
order.setSupervisorName(user.getName());
order.setLzgh(school.getLzgh());
orderMapper.insert(order);
appMapper.inserOrderHis(id, "支付请求提交!", new Date(), orderView.getOrderName());
return result;
}
......
......@@ -269,7 +269,7 @@ public class RongHeController {
order.setId(id);
SimpleDateFormat sd = new SimpleDateFormat("yyyyMMdd");
SimpleDateFormat sd2 = new SimpleDateFormat("yyyyMM");
String orderNumber = "YRYM" + sd.format(new Date()) + uuid.substring(1, 12);
String orderNumber = "YRYM" + sd.format(new Date()) + id.substring(1, 12);
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
Date parse = null;
try {
......@@ -326,35 +326,40 @@ public class RongHeController {
}
@RequestMapping(value = "toSubmisOrderPreser", method = {RequestMethod.GET, RequestMethod.POST}, produces = "text/plain;charset=UTF-8")
public void toSubmisOrderPreser(HttpServletRequest request) throws Exception {
String orderseq = request.getParameter("ORDERSEQ");//orderseq
String uptranseq = request.getParameter("UPTRANSEQ"); // 穗易付平台,支付流水号uptranseq
String orderamount = request.getParameter("ORDERAMOUNT");//orderamount 价格
String orderreqtranseq = request.getParameter("ORDERREQTRANSEQ"); // 穗易付订单号 orderreqtranseq
public void toSubmisOrderPreser(HttpServletRequest request){
try{
String orderseq = request.getParameter("ORDERSEQ");//orderseq
String uptranseq = request.getParameter("UPTRANSEQ"); // 穗易付平台,支付流水号uptranseq
String orderamount = request.getParameter("ORDERAMOUNT");//orderamount 价格
String orderreqtranseq = request.getParameter("ORDERREQTRANSEQ"); // 穗易付订单号 orderreqtranseq
/*String orderseq = "4iz818f1u74kznypf3w81";
String uptranseq = "2019082922001464810523969803"; // 穗易付平台,支付流水号
String orderamount = "30";
String orderreqtranseq = "GZCTPAY20190829384046979"; // 穗易付订单号*/
log.info("----------异步请求接受参数订单号:" + orderseq);
log.info("----------异步请求接受参数支付流水号:" + uptranseq);
log.info("----------异步请求接受参数订单金额:" + orderamount);
log.info("----------异步请求接受参数穗易付订单号:" + orderreqtranseq);
Wrapper<OrderView> wrapper = new EntityWrapper<>();
wrapper.eq("orderSeq", orderseq);
Map<String, Object> dataMapping = new HashMap<>();
dataMapping.put("orderReqtranSeq", orderreqtranseq);
dataMapping.put("uptranseq", uptranseq);
dataMapping.put("order_payment_time", new Date());
dataMapping.put("status", "已支付");
orderViewMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping), wrapper);
Wrapper<Order> objectEntityWrapper = new EntityWrapper<>();
objectEntityWrapper.eq("kd_order_id", orderseq);
Map<String, Object> dataMapping2 = new HashMap<>();
dataMapping2.put("order_status", "未下单");
orderMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping2), objectEntityWrapper);
List<Order> orders = orderMapper.selectList(objectEntityWrapper);
appMapper.inserOrderHis(orders.get(0).getId(), "支付完成,未下单!", new Date(), orders.get(0).getCustomerName());
log.info("----------异步请求接受参数订单号:" + orderseq);
log.info("----------异步请求接受参数支付流水号:" + uptranseq);
log.info("----------异步请求接受参数订单金额:" + orderamount);
log.info("----------异步请求接受参数穗易付订单号:" + orderreqtranseq);
Wrapper<OrderView> wrapper = new EntityWrapper<>();
wrapper.eq("orderSeq", orderseq);
Map<String, Object> dataMapping = new HashMap<>();
dataMapping.put("orderReqtranSeq", orderreqtranseq);
dataMapping.put("uptranseq", uptranseq);
dataMapping.put("order_payment_time", new Date());
dataMapping.put("status", "已支付");
orderViewMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping), wrapper);
Wrapper<Order> objectEntityWrapper = new EntityWrapper<>();
objectEntityWrapper.eq("kd_order_id", orderseq);
Map<String, Object> dataMapping2 = new HashMap<>();
dataMapping2.put("order_status", "未下单");
orderMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping2), objectEntityWrapper);
List<Order> orders = orderMapper.selectList(objectEntityWrapper);
appMapper.inserOrderHis(orders.get(0).getId(), "支付完成,未下单!", new Date(), orders.get(0).getCustomerName());
}catch (Exception e){
e.getMessage();
}
}
......@@ -367,13 +372,18 @@ public class RongHeController {
* @throws Exception
*/
@PostMapping(value = "orderPay")
public ResponseData<Object> toPaymentPlatformPage(HttpServletRequest request, HttpServletResponse response) throws Exception {
String orderId = request.getParameter("orderId");
String ipay = request.getParameter("ipay");
String userId = request.getParameter("userId");
String rhTime = request.getParameter("rhTime");
String result = JsoupMethodZhifu(orderId, ipay, userId, request, response,rhTime);
return ResponseData.success(result);
public ResponseData<Object> toPaymentPlatformPage(HttpServletRequest request, HttpServletResponse response){
try {
String orderId = request.getParameter("orderId");
String ipay = request.getParameter("ipay");
String userId = request.getParameter("userId");
String rhTime = request.getParameter("rhTime");
String result = JsoupMethodZhifu(orderId, ipay, userId, request, response,rhTime);
return ResponseData.success(result);
}catch (Exception e){
e.getMessage();
}
return ResponseData.error("订单异常");
}
@RequestMapping("/selectUniversity")
public ResponseData<UniversityInfo> selectUniversity(@RequestParam("universityId") String universityId) {
......@@ -386,96 +396,100 @@ public class RongHeController {
* @Description:支付请求
*/
public String JsoupMethodZhifu(String orderId, String ipay, String userId,
HttpServletRequest request, HttpServletResponse response, String rhTime) throws Exception {
log.info("----------首先发送支付请求接口----------");
//查询订单信息
OrderView orderView = orderViewMapper.selectById(orderId);
String uuid = UUID.randomUUID().toString();
String id = uuid.split("-")[0] + uuid.split("-")[1];
//修改支付方式
Wrapper<OrderView> wrapper = new EntityWrapper<>();
wrapper.eq("order_id", orderId);
Map<String, Object> dataMapping = new HashMap<>();
dataMapping.put("ipay", ipay);
Map<String, String> map = new HashMap<String, String>();
//给MAP数组添加数据
map.put("CLIENTNUMBER", Constant.CLIENTNUMBER);//商户标识,由穗易付平台统一分配
map.put("ORDERSEQ", orderView.getOrderSeq());//订单号
log.info("----------宽带价格prices:" + orderView.getWebOrderAmount());
if (Constant.PRODUCTSKU479Str.indexOf(orderView.getWebOrderAmount()) != -1) {
map.put("PRODUCTSKU", Constant.PRODUCTSKU479);//商户产品
} else {
map.put("PRODUCTSKU", Constant.PRODUCTSKU481);
}
Date orderdate = orderView.getOrderDate();
SimpleDateFormat ft = new SimpleDateFormat("yyyyMMdd");
map.put("ORDERDATE", ft.format(orderdate));
map.put("ORDERAMOUNT", orderView.getWebOrderAmount());//价格
map.put("ORDERNAME", orderView.getOrderName());//用户名
map.put("ORDERPHONE", orderView.getOrderPhone());//支付宝账号(电话)
map.put("ORDERNUMBER", orderView.getOrderNumber());//身份证
if (Constant.Payment1.equals(ipay)) {
//支付成功回调的页面
/* String MERCHANTURL = Constant.TOMCATURL + "/dankuan/toSubmisOrderPreser?id=" + userId +"orderId="+id;*/
/* String MERCHANTURL = "http://167460x6b0.51mypc.cn/ciop/rongHe/toSubmisOrderPreser?id=" + userId +"orderId="+id;*/
String MERCHANTURL = "http://3715zj2369.qicp.vip/#/hhr/dkSuccessful?id="+userId+"&"+"orderId="+id;
map.put("MERCHANTURL", MERCHANTURL);
}
// 融合回调后端接口地址
// map.put("BACKDROPURL", Constant.TOMCATURL + "/rongHe/toSubmisOrderPreser");
map.put("BACKDROPURL", "http://3715zj2369.qicp.vip/ciop/rongHe/toSubmisOrderPreser");
String str = "ORDERSEQ=" + orderView.getOrderSeq() + "&ORDERDATE=" + ft.format(orderdate) + "&ORDERAMOUNT=" + orderView.getWebOrderAmount() + "&KEY=" + Constant.APPK;//商户标识
//* 将值转换为大写 *//*
map.put("MAC", MD5Utils.md5(str).toUpperCase());
int PAYTYPE = 1; // 支付类型
int IPAY = 1; // 支付平台
if (Constant.Payment3.equals(ipay)) {
PAYTYPE = 5;
IPAY = 3;
}
log.info("----------支付渠道(0翼支付网厅,1支付宝,3微信):" + ipay);
map.put("PAYTYPE", String.valueOf(PAYTYPE));
map.put("IPAY", String.valueOf(IPAY));
log.info("----------支付请求参数:" + map);
//定义Document对象
Document doc = null;
String result = "";
String qrcode = "";
// Jsoup用post提交,超时6秒钟,
HttpServletRequest request, HttpServletResponse response, String rhTime){
try{
log.info("----------首先发送支付请求接口----------");
//查询订单信息
OrderView orderView = orderViewMapper.selectById(orderId);
String uuid = UUID.randomUUID().toString();
String id = uuid.split("-")[0] + uuid.split("-")[1];
//修改支付方式
Wrapper<OrderView> wrapper = new EntityWrapper<>();
wrapper.eq("order_id", orderId);
Map<String, Object> dataMapping = new HashMap<>();
dataMapping.put("ipay", ipay);
Map<String, String> map = new HashMap<String, String>();
//给MAP数组添加数据
map.put("CLIENTNUMBER", Constant.CLIENTNUMBER);//商户标识,由穗易付平台统一分配
map.put("ORDERSEQ", orderView.getOrderSeq());//订单号
log.info("----------宽带价格prices:" + orderView.getWebOrderAmount());
if (Constant.PRODUCTSKU479Str.indexOf(orderView.getWebOrderAmount()) != -1) {
map.put("PRODUCTSKU", Constant.PRODUCTSKU479);//商户产品
} else {
map.put("PRODUCTSKU", Constant.PRODUCTSKU481);
}
Date orderdate = orderView.getOrderDate();
SimpleDateFormat ft = new SimpleDateFormat("yyyyMMdd");
map.put("ORDERDATE", ft.format(orderdate));
map.put("ORDERAMOUNT", orderView.getWebOrderAmount());//价格
map.put("ORDERNAME", orderView.getOrderName());//用户名
map.put("ORDERPHONE", orderView.getOrderPhone());//支付宝账号(电话)
map.put("ORDERNUMBER", orderView.getOrderNumber());//身份证
if (Constant.Payment1.equals(ipay)) {
//支付成功回调的页面
/* String MERCHANTURL = Constant.TOMCATURL + "/dankuan/toSubmisOrderPreser?id=" + userId +"orderId="+id;*/
/* String MERCHANTURL = "http://167460x6b0.51mypc.cn/ciop/rongHe/toSubmisOrderPreser?id=" + userId +"orderId="+id;*/
String MERCHANTURL = "http://3715zj2369.qicp.vip/#/hhr/dkSuccessful?id="+userId+"&"+"orderId="+id;
map.put("MERCHANTURL", MERCHANTURL);
}
// 融合回调后端接口地址
// map.put("BACKDROPURL", Constant.TOMCATURL + "/rongHe/toSubmisOrderPreser");
map.put("BACKDROPURL", "http://3715zj2369.qicp.vip/ciop/rongHe/toSubmisOrderPreser");
String str = "ORDERSEQ=" + orderView.getOrderSeq() + "&ORDERDATE=" + ft.format(orderdate) + "&ORDERAMOUNT=" + orderView.getWebOrderAmount() + "&KEY=" + Constant.APPK;//商户标识
//* 将值转换为大写 *//*
map.put("MAC", MD5Utils.md5(str).toUpperCase());
int PAYTYPE = 1; // 支付类型
int IPAY = 1; // 支付平台
if (Constant.Payment3.equals(ipay)) {
PAYTYPE = 5;
IPAY = 3;
}
log.info("----------支付渠道(0翼支付网厅,1支付宝,3微信):" + ipay);
map.put("PAYTYPE", String.valueOf(PAYTYPE));
map.put("IPAY", String.valueOf(IPAY));
log.info("----------支付请求参数:" + map);
//定义Document对象
Document doc = null;
String result = "";
String qrcode = "";
// Jsoup用post提交,超时6秒钟,
// 旧地址 https://gzdxpay.mini189.cn/web/order-pay.action
// 新环境测试地址 https://gzctpay.mini189.cn/previewpay/orderPay/order-pay
// 新环境正式地址 https://gzctpay.mini189.cn/pay/orderPay/order-pay
doc =
Jsoup.connect("https://gzctpay.mini189.cn/pay/orderPay/order-pay")
doc =
Jsoup.connect("https://gzctpay.mini189.cn/pay/orderPay/order-pay")
// .proxy("172.18.101.170", 3128)
.data(map)
.timeout(20000)
.ignoreContentType(true)
.post();
//获取回调信息
String i = doc.text().trim();
log.info(i);
//解析json格式
JSONObject json = JSONObject.parseObject(i);
//获取jsonp格式中的result(短链接,返回到前端)
log.info("----------调用穗易付接口返回的结果:" + json);
result = (String) json.get("result");
qrcode = (String) json.get("qrcode");
String ORDERSEQ = (String) json.get("ORDERSEQ");
String msg = (String) json.get("msg");
if (StringUtils.isNotBlank(msg) && msg.equals("success")) {
dataMapping.put("payType", PAYTYPE + "");
log.info("====默认受理未付费,之后可通过提交订单到智能平台后再更新状态====");
dataMapping.put("status", "100");
log.info("====保存到本地数据库 ====");
orderViewMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping), wrapper);
appMapper.inserOrderHis(id, "支付请求提交!", new Date(), orderView.getOrderName());
return result;
.data(map)
.timeout(20000)
.ignoreContentType(true)
.post();
//获取回调信息
String i = doc.text().trim();
log.info(i);
//解析json格式
JSONObject json = JSONObject.parseObject(i);
//获取jsonp格式中的result(短链接,返回到前端)
log.info("----------调用穗易付接口返回的结果:" + json);
result = (String) json.get("result");
qrcode = (String) json.get("qrcode");
String ORDERSEQ = (String) json.get("ORDERSEQ");
String msg = (String) json.get("msg");
if (StringUtils.isNotBlank(msg) && msg.equals("success")) {
dataMapping.put("payType", PAYTYPE + "");
log.info("====默认受理未付费,之后可通过提交订单到智能平台后再更新状态====");
dataMapping.put("status", "100");
log.info("====保存到本地数据库 ====");
orderViewMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping), wrapper);
appMapper.inserOrderHis(id, "支付请求提交!", new Date(), orderView.getOrderName());
return result;
}
}catch (Exception e){
e.getMessage();
}
return null;
}
......
......@@ -330,6 +330,21 @@ public class codeManagerController {
Map<String, Object> mapData = new HashMap<>();
String idCard = request.getParameter("idCard"); // 身份证号
String accountNumber = request.getParameter("accountNumber");// 多媒体账号
// 判断是否在宽带清单中
List<Map<String, Object>> accountNumberList = orderMapper.checkOldKdUser(accountNumber);
// 查询多媒体账号在甲方提供清单中是否存在
if(!accountNumberList.isEmpty() && accountNumberList.size() > 0) { //已存在纪录
mapData.put("code", 1);
return ResponseData.error(mapData,"该账号已存在");
} else {
// 查询多媒体账号在订单表是否存在
List<Map<String, Object>> maps = orderMapper.checkOldhhrOrder(accountNumber);
if(!maps.isEmpty() && maps.size()>0){
mapData.put("code", 1);
return ResponseData.error(mapData,"该账号已存在");
}
}
// 判断身份证号是否在清单中
Wrapper<Order> orderWrapper = new EntityWrapper<>();
orderWrapper.eq(StringUtils.isNotBlank(idCard), "id_card", idCard);
......@@ -340,15 +355,8 @@ public class codeManagerController {
Wrapper<OrderView> wrapper = new EntityWrapper<>();
wrapper.eq(StringUtils.isNotBlank(order.get(0).getKdOrderId()), "orderSeq", order.get(0).getKdOrderId());
List<OrderView> orderViews = orderViewMapper.selectList(wrapper);
if ((orderViews.get(0).getUptranseq()==null || StringUtils.isBlank(orderViews.get(0).getUptranseq()))
&& !"0".equals(orderViews.get(0).getWebOrderAmount())) {
mapData.put("orderId", orderViews.get(0).getOrderId());
mapData.put("orderSeq", orderViews.get(0).getOrderSeq());
mapData.put("userType", order.get(0).getUserType());
mapData.put("kapin", order.get(0).getKapin());
mapData.put("code", 2);//"你已存在未支付的订单,请前往支付页面"
return ResponseData.error(mapData,"你已存在未支付的订单,请前往支付页面");
} else {
if("0".equals(orderViews.get(0).getWebOrderAmount())){
mapData.put("orderId", order.get(0).getId());
mapData.put("orderSeq", orderViews.get(0).getOrderSeq());
mapData.put("uptranseq", orderViews.get(0).getUptranseq());
mapData.put("userType", order.get(0).getUserType());
......@@ -356,22 +364,17 @@ public class codeManagerController {
mapData.put("code", 0); //不可重复下单"你已存在正在处理的订单,请勿重复下单"
return ResponseData.error(mapData,"你已存在正在处理的订单,请勿重复下单");
}
}
// 判断是否在宽带清单中
List<Map<String, Object>> accountNumberList = orderMapper.checkOldKdUser(accountNumber);
// 查询多媒体账号在甲方提供清单中是否存在
if(!accountNumberList.isEmpty() && accountNumberList.size() > 0) { //已存在纪录
mapData.put("code", 1);
return ResponseData.error(mapData,"该账号已存在");
} else {
// 查询多媒体账号在订单表是否存在
List<Map<String, Object>> maps = orderMapper.checkOldhhrOrder(accountNumber);
if(!maps.isEmpty() && maps.size()>0){
mapData.put("code", 1);
return ResponseData.error(mapData,"该账号已存在");
if (orderViews.get(0).getUptranseq()==null ||
StringUtils.isBlank(orderViews.get(0).getUptranseq())) {
mapData.put("orderId", order.get(0).getId());
mapData.put("orderSeq", orderViews.get(0).getOrderSeq());
mapData.put("userType", order.get(0).getUserType());
mapData.put("kapin", order.get(0).getKapin());
mapData.put("code", 2);//"你已存在未支付的订单,请前往支付页面"
return ResponseData.error(mapData,"你已存在未支付的订单,请前往支付页面");
}
}
}catch (Exception e){
return ResponseData.error("连接超时,请重试");
}
......
......@@ -65,156 +65,166 @@ public class IntelligenceSendOrder {
* 单宽下单公共类
* @param order hhr_order map类型
*/
public void singleBroadSendOrder(Map<String, Object> order) throws Exception {
// 初始化下单支付参数
String ORDERSEQ = "", ORDERAMOUNT = "", ORDERREQTRANSEQ = "", UPTRANSEQ = "";
Map<String, Object> orderMap = null;
Map<String, Object> schoolMap = null;
List<Map<String, Object>> list1 = new ArrayList<>();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String currentTimeStr = "";
ORDERSEQ = order.get("kd_order_id").toString();
currentTimeStr = simpleDateFormat.format(new Date());
Wrapper<OrderView> orderViewWrapper = new EntityWrapper<>();
orderViewWrapper.eq("orderSeq", ORDERSEQ);
List<Map<String, Object>> orderViewMaps = orderViewMapper.selectMaps(orderViewWrapper);
if (orderViewMaps != null && orderViewMaps.size() > 0) {
orderMap = orderViewMaps.get(0);
}
if (orderMap == null) {
log.info("错误记录:" + JSONObject.toJSONString(order));
log.info("订单号:" + ORDERSEQ + ",在order_view表中无记录,无法进行智能平台下单");
return;
}
ORDERAMOUNT = orderMap.get("webOrderAmount") != null ? orderMap.get("webOrderAmount").toString() : "0";
ORDERREQTRANSEQ = orderMap.get("orderReqtranSeq") != null ? orderMap.get("orderReqtranSeq").toString() : "";
UPTRANSEQ = orderMap.get("uptranseq") != null ? orderMap.get("uptranseq").toString() : "";
// 根据学校名称,获取该学校信息
List<Map<String, Object>> hehuoren_id =
universityInfoMapper.selectProductManager(order.get("hehuoren_id").toString());
if (hehuoren_id.size() > 0 && hehuoren_id.get(0).get("university_id") != null) {
Wrapper<UniversityInfo> universityInfoWrapper = new EntityWrapper<>();
universityInfoWrapper.eq("universityId", hehuoren_id.get(0).get("university_id").toString());
List<Map<String, Object>> findUniversityById = universityInfoMapper.selectMaps(universityInfoWrapper);
schoolMap = findUniversityById.get(0);
} else {
Wrapper<UniversityInfo> universityInfoWrapper = new EntityWrapper<>();
universityInfoWrapper.eq("university_name", orderMap.get("orderUniversityName"));
universityInfoWrapper.eq("university_region", orderMap.get("orderRegion"));
list1 = universityInfoMapper.selectMaps(universityInfoWrapper);
schoolMap = list1.get(0);
}
public void singleBroadSendOrder(Map<String, Object> order) {
try {
// 初始化下单支付参数
String ORDERSEQ = "", ORDERAMOUNT = "", ORDERREQTRANSEQ = "", UPTRANSEQ = "";
Map<String, Object> orderMap = null;
Map<String, Object> schoolMap = null;
List<Map<String, Object>> list1 = new ArrayList<>();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String currentTimeStr = "";
ORDERSEQ = order.get("kd_order_id").toString();
currentTimeStr = simpleDateFormat.format(new Date());
Wrapper<OrderView> orderViewWrapper = new EntityWrapper<>();
orderViewWrapper.eq("orderSeq", ORDERSEQ);
List<Map<String, Object>> orderViewMaps = orderViewMapper.selectMaps(orderViewWrapper);
if (orderViewMaps != null && orderViewMaps.size() > 0) {
orderMap = orderViewMaps.get(0);
}
if (orderMap.get("orderSeqThd") == null || "".equals(orderMap.get("orderSeqThd"))) {
// 1、获取产品ID
JSONObject productJsonObject = getProductId(currentTimeStr, 0);
log.info("----------调用智能平台的产品接口返回参数:" + productJsonObject);
// 2、获取销售品ID
if (productJsonObject.toString().indexOf("list") == -1) {
if (orderMap == null) {
log.info("错误记录:" + JSONObject.toJSONString(order));
log.info("订单号:" + ORDERSEQ + ",在order_view表中无记录,无法进行智能平台下单");
return;
}
JSONArray list = productJsonObject.getJSONArray("list");
String productId = null; // 产品id
ORDERAMOUNT = ORDERAMOUNT.replace("元", "");
ORDERAMOUNT = ORDERAMOUNT.replace(".00", "");
ORDERAMOUNT = orderMap.get("webOrderAmount") != null ? orderMap.get("webOrderAmount").toString() : "0";
ORDERREQTRANSEQ = orderMap.get("orderReqtranSeq") != null ? orderMap.get("orderReqtranSeq").toString() : "";
UPTRANSEQ = orderMap.get("uptranseq") != null ? orderMap.get("uptranseq").toString() : "";
// 根据学校名称,获取该学校信息
List<Map<String, Object>> hehuoren_id =
universityInfoMapper.selectProductManager(order.get("hehuoren_id").toString());
if (hehuoren_id.size() > 0 && hehuoren_id.get(0).get("university_id") != null) {
Wrapper<UniversityInfo> universityInfoWrapper = new EntityWrapper<>();
universityInfoWrapper.eq("university_id", hehuoren_id.get(0).get("university_id").toString());
List<Map<String, Object>> findUniversityById = universityInfoMapper.selectMaps(universityInfoWrapper);
schoolMap = findUniversityById.get(0);
} else {
String productName = "校园宽带" + ORDERAMOUNT + "元";
Wrapper<UniversityInfo> universityInfoWrapper = new EntityWrapper<>();
universityInfoWrapper.eq("university_name", orderMap.get("orderUniversityName"));
universityInfoWrapper.eq("university_region", orderMap.get("orderRegion"));
list1 = universityInfoMapper.selectMaps(universityInfoWrapper);
if (ORDERAMOUNT.contains("0.01")) {
productName = "校园宽带30元";
} else if (ORDERAMOUNT.contains("0.02")) {
productName = "校园宽带300元";
schoolMap = list1.get(0);
}
System.out.println("------" + productName);
// productName = "校园宽带30元";
for (int i = 0; i < list.size(); i++) {
net.sf.json.JSONObject itmeJson = net.sf.json.JSONObject.fromObject(list.get(i));
// 判断获取的全部产品与订单产品符合的拿取对应的ID
if (itmeJson.getString("name").indexOf(productName) != -1) {
productId = itmeJson.getString("id"); // 获取对应产品ID
break;
if (orderMap.get("orderSeqThd") == null || "".equals(orderMap.get("orderSeqThd"))) {
// 1、获取产品ID
JSONObject productJsonObject = getProductId(currentTimeStr, 0);
log.info("----------调用智能平台的产品接口返回参数:" + productJsonObject);
// 2、获取销售品ID
if (productJsonObject.toString().indexOf("list") == -1) {
return;
}
}
log.info("----------根据返回参数获取产品ID:" + productId);
String saleId = null; // 销售id
JSONObject saleJsonObject = getSaleId(productId, currentTimeStr, 0); // 获取销售ID
log.info("----------调用智能平台的获取销售品接口返回值:" + saleJsonObject);
JSONArray saleList = saleJsonObject.getJSONArray("list");
net.sf.json.JSONObject itmeJson = net.sf.json.JSONObject.fromObject(saleList.get(0));
saleId = itmeJson.getString("saleId");
JSONArray list = productJsonObject.getJSONArray("list");
String productId = null; // 产品id
ORDERAMOUNT = ORDERAMOUNT.replace("元", "");
ORDERAMOUNT = ORDERAMOUNT.replace(".00", "");
setPriceIndex(schoolMap, orderMap, ORDERAMOUNT);
String productName = "校园宽带" + ORDERAMOUNT + "元";
if (ORDERAMOUNT.contains("0.01")) {
productName = "校园宽带30元";
} else if (ORDERAMOUNT.contains("0.02")) {
productName = "校园宽带300元";
}
// 3、提交订单到智能平台
JSONObject submitOrderJsonObject =
getOrderInfo(
schoolMap,
orderMap,
currentTimeStr,
productId,
saleId,
ORDERSEQ,
UPTRANSEQ,
ORDERAMOUNT,
ORDERREQTRANSEQ,
0);
log.info(
"----------调用单宽带接口(提交订单至智能平台)并返回参数信息---status:"
+ submitOrderJsonObject.get("status")
+ " msg:"
+ submitOrderJsonObject.get("msg")
+ " orderNum:"
+ submitOrderJsonObject.get("orderNumber"));
// 4、查询智能订单是否存在
String orderNum = (String) submitOrderJsonObject.get("orderNumber");
JSONObject queryOrderJsonObject = null;
if (StringUtils.isNotBlank(orderNum)) {
queryOrderJsonObject = getQueryOrderInfo(orderNum, currentTimeStr, 0);
log.info("----------调用查询智能订单接口并返回参数信息:" + queryOrderJsonObject);
/* 5、更新数据库 */
String state = queryOrderJsonObject.getString("state");
// 更新hhr_order
Wrapper<Order> orderWrapper = new EntityWrapper<>();
orderWrapper.eq("kd_order_id", orderNum);
Order updateOrder = new Order();
updateOrder.setOrderId(ORDERSEQ);
updateOrder.setOrderStatus("审核中");
orderMapper.update(updateOrder, orderWrapper);
if(productName.equals("校园宽带0元")){
productName = "校园宽带(免月租)";
ORDERAMOUNT = "0元";
ORDERREQTRANSEQ = "00000";
UPTRANSEQ = "00000";
}
System.out.println("------" + productName);
// productName = "校园宽带30元";
for (int i = 0; i < list.size(); i++) {
net.sf.json.JSONObject itmeJson = net.sf.json.JSONObject.fromObject(list.get(i));
// 判断获取的全部产品与订单产品符合的拿取对应的ID
if (itmeJson.getString("name").indexOf(productName) != -1) {
productId = itmeJson.getString("id"); // 获取对应产品ID
break;
}
}
log.info("----------根据返回参数获取产品ID:" + productId);
String saleId = null; // 销售id
JSONObject saleJsonObject = getSaleId(productId, currentTimeStr, 0); // 获取销售ID
log.info("----------调用智能平台的获取销售品接口返回值:" + saleJsonObject);
JSONArray saleList = saleJsonObject.getJSONArray("list");
net.sf.json.JSONObject itmeJson = net.sf.json.JSONObject.fromObject(saleList.get(0));
saleId = itmeJson.getString("saleId");
setPriceIndex(schoolMap, orderMap, ORDERAMOUNT);
if (StringUtils.isNotBlank(state)) {
log.info("支付成功后更新订单状态");
OrderView updateOrderView = new OrderView();
updateOrderView.setStatus(QueOrderNum(state));
updateOrderView.setOrderseqThd(orderNum);
Wrapper<OrderView> wrapperOrderView = new EntityWrapper<>();
wrapperOrderView.eq("orderSeq", ORDERSEQ);
orderViewMapper.update(updateOrderView, wrapperOrderView);
log.info("----------将智能订单状态更新至数据库success:" + state);
} else {
log.info("----------将智能订单状态更新至数据库error:" + state);
// 3、提交订单到智能平台
JSONObject submitOrderJsonObject =
getOrderInfo(
schoolMap,
orderMap,
currentTimeStr,
productId,
saleId,
ORDERSEQ,
UPTRANSEQ,
ORDERAMOUNT,
ORDERREQTRANSEQ,
0);
log.info(
"----------调用单宽带接口(提交订单至智能平台)并返回参数信息---status:"
+ submitOrderJsonObject.get("status")
+ " msg:"
+ submitOrderJsonObject.get("msg")
+ " orderNum:"
+ submitOrderJsonObject.get("orderNumber"));
// 4、查询智能订单是否存在
String orderNum = (String) submitOrderJsonObject.get("orderNumber");
JSONObject queryOrderJsonObject = null;
if (StringUtils.isNotBlank(orderNum)) {
queryOrderJsonObject = getQueryOrderInfo(orderNum, currentTimeStr, 0);
log.info("----------调用查询智能订单接口并返回参数信息:" + queryOrderJsonObject);
/* 5、更新数据库 */
String state = queryOrderJsonObject.getString("state");
// 更新hhr_order
Wrapper<Order> orderWrapper = new EntityWrapper<>();
orderWrapper.eq("kd_order_id", orderNum);
Order updateOrder = new Order();
updateOrder.setOrderId(ORDERSEQ);
updateOrder.setOrderStatus("审核中");
orderMapper.update(updateOrder, orderWrapper);
if (StringUtils.isNotBlank(state)) {
log.info("支付成功后更新订单状态");
OrderView updateOrderView = new OrderView();
updateOrderView.setStatus(QueOrderNum(state));
updateOrderView.setOrderseqThd(orderNum);
Wrapper<OrderView> wrapperOrderView = new EntityWrapper<>();
wrapperOrderView.eq("orderSeq", ORDERSEQ);
orderViewMapper.update(updateOrderView, wrapperOrderView);
log.info("----------将智能订单状态更新至数据库success:" + state);
} else {
log.info("----------将智能订单状态更新至数据库error:" + state);
}
}
} else {
log.info(
"---单宽支付接口推送---"
+ ORDERSEQ
+ "---"
+ UPTRANSEQ
+ "---"
+ ORDERAMOUNT
+ "---"
+ ORDERREQTRANSEQ);
log.info("重复订单");
}
} else {
log.info(
"---单宽支付接口推送---"
+ ORDERSEQ
+ "---"
+ UPTRANSEQ
+ "---"
+ ORDERAMOUNT
+ "---"
+ ORDERREQTRANSEQ);
log.info("重复订单");
}catch (Exception e){
e.getMessage();
}
}
......@@ -317,7 +327,6 @@ public class IntelligenceSendOrder {
/**
* 获取订单信息
* @param request
* @param schoolMap
* @param orderMap
* @param currentTimeStr
......@@ -350,7 +359,7 @@ public class IntelligenceSendOrder {
.setSocketTimeout(50000)
.setConnectTimeout(50000)
.setConnectionRequestTimeout(50000)
// .setProxy(proxy)
.setProxy(proxy)
.build();
CloseableHttpClient httpclient =
HttpClients.custom().setDefaultRequestConfig(defaultRequestConfig).build();
......@@ -555,7 +564,7 @@ public class IntelligenceSendOrder {
// 产品自定义属性;暂时默认属性名称只能传“日租卡号码”
Map<String, String> propertyMap = new HashMap<String, String>();
propertyMap.put("name", "宽带速率");
String setMeal = (String) orderMap.get("order_set_meal");
String setMeal = (String) orderMap.get("orderSetMeal");
if (StringUtils.isNotBlank(setMeal)) {
setMeal = setMeal.replace("包月", "");
setMeal = setMeal.replace("包年", "");
......@@ -787,7 +796,7 @@ public class IntelligenceSendOrder {
throws Exception {
List<NameValuePair> qParams = new ArrayList<NameValuePair>();
Map<String, String> signMap = new HashMap<String, String>(); // 待签名参数
// HttpHost proxy = new HttpHost("172.18.101.170", 3128);
HttpHost proxy = new HttpHost("172.18.101.170", 3128);
RequestConfig defaultRequestConfig =
RequestConfig.custom()
.setSocketTimeout(500000)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment