|
@@ -47,8 +47,6 @@ public class PayOrderServiceImpl implements PayOrderService {
|
|
|
//System.out.println("随机生成6位数result :"+result);
|
|
|
String ordNo=System.nanoTime()+result;
|
|
|
payOrder.setOrderNo(ordNo);
|
|
|
-
|
|
|
-
|
|
|
payOrder.setDiscountAmt(payOrderRequest.getDiscountAmt()); //优惠金额
|
|
|
payOrder.setDiscountCouponAmt(payOrderRequest.getDiscountCouponAmt()); //优惠劵金额
|
|
|
payOrder.setDiscountCoupon(payOrderRequest.getDiscountCoupon()); //优惠券
|
|
@@ -132,82 +130,6 @@ public class PayOrderServiceImpl implements PayOrderService {
|
|
|
List<PayOrder> payOrderList= payOrderMapper.selectByExample(example);
|
|
|
//返回订单号
|
|
|
ordNo= payOrderList.get(0).getOrderNo();
|
|
|
-
|
|
|
- //存放查询用户信息
|
|
|
- AppUserInfo appUserInfo = new AppUserInfo();
|
|
|
- //存放客户信息
|
|
|
- CustomerManage customerManage = new CustomerManage();
|
|
|
- //向客户表中插入数据
|
|
|
- appUserInfo.setUserType(payOrderRequest.getUserType()); //用户类型
|
|
|
- if(payOrderRequest.getUserType().equals("1")){
|
|
|
- appUserInfo.setBlogOpenid(payOrderRequest.getToken()); //1 是公众号
|
|
|
- }else if(payOrderRequest.getUserType().equals("2")){
|
|
|
- appUserInfo.setMinaOpenid(payOrderRequest.getToken()); //2是小程序
|
|
|
- }
|
|
|
- //从客户信息表查询数据用于插入客户表
|
|
|
- List<AppUserInfo> appUserInfoList = payOrderMapper.getUserInfoByOpenId(appUserInfo);
|
|
|
- Date blogRegTime = null; //公众号注册时间
|
|
|
- Date minaRegTime = null; //小程序注册时间
|
|
|
- if(appUserInfoList != null && appUserInfoList.size() >0){
|
|
|
- for(AppUserInfo u : appUserInfoList){
|
|
|
- switch (u.getUserType()){
|
|
|
- case "1":
|
|
|
- customerManage.setBlogOpenid(u.getBlogOpenid());
|
|
|
- customerManage.setBlogUserId(u.getUserId());
|
|
|
- customerManage.setPhoneNumber(u.getMobilePhone());
|
|
|
- blogRegTime =u.getRegisteDate();
|
|
|
- break;
|
|
|
- case "2":
|
|
|
- customerManage.setMinaOpenid(u.getMinaOpenid());
|
|
|
- customerManage.setMinaUserId(u.getUserId());
|
|
|
- customerManage.setPhoneNumber(u.getMobilePhone());
|
|
|
- minaRegTime = u.getRegisteDate();
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- //判断公众号和小程序时间取最早的时间
|
|
|
- if(blogRegTime !=null && minaRegTime != null){
|
|
|
- if(blogRegTime.compareTo(minaRegTime) >0){
|
|
|
- customerManage.setRegtime(minaRegTime);
|
|
|
- }else if(blogRegTime.compareTo(minaRegTime) <0){
|
|
|
- customerManage.setRegtime(blogRegTime);
|
|
|
- }else if(blogRegTime.compareTo(minaRegTime) ==0){
|
|
|
- //相等时随便取一个
|
|
|
- customerManage.setRegtime(minaRegTime);
|
|
|
- }
|
|
|
- }else if(blogRegTime == null){
|
|
|
- customerManage.setRegtime(minaRegTime);
|
|
|
- }else if(minaRegTime == null){
|
|
|
- customerManage.setRegtime(blogRegTime);
|
|
|
- }
|
|
|
- }
|
|
|
- customerManage.setStationId(payOrderRequest.getStationId()); //油站ID
|
|
|
- customerManage.setOilName(payOrderRequest.getOilName()); //油品名称
|
|
|
- customerManage.setStationName(payOrder.getStationName()); //存入油站名称
|
|
|
- //已存在用户信息 existCustomer
|
|
|
- CustomerManage existCustomer = payOrderMapper.isExistCustomer(customerManage);
|
|
|
- //判断该用户是否已存在
|
|
|
- if(existCustomer != null){ //存在该用户时更新
|
|
|
- //此处if放null处理
|
|
|
- if(existCustomer.getAmt() !=null){
|
|
|
- //存入金额 累加原来金额
|
|
|
- customerManage.setAmt(existCustomer.getAmt().add(BigDecimal.valueOf(Double.valueOf(payOrderRequest.getAmt()))));
|
|
|
- }else {
|
|
|
- customerManage.setAmt(BigDecimal.valueOf(Double.valueOf(payOrderRequest.getAmt())));
|
|
|
- }
|
|
|
-
|
|
|
- if(existCustomer.getLiters() !=null){
|
|
|
- //存入升数 累加原来升数
|
|
|
- customerManage.setLiters(existCustomer.getLiters().add(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters()))));
|
|
|
- }else {
|
|
|
- customerManage.setLiters(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters())));
|
|
|
- }
|
|
|
- payOrderMapper.updateCustomer(customerManage);
|
|
|
- }else{
|
|
|
- customerManage.setAmt(BigDecimal.valueOf(Double.valueOf(payOrderRequest.getAmt()))); //存入金额
|
|
|
- customerManage.setLiters(BigDecimal.valueOf(Double.valueOf(payOrder.getOrderLiters()))); //存入升数
|
|
|
- payOrderMapper.insertCustomer(customerManage);
|
|
|
- }
|
|
|
return ordNo;
|
|
|
}
|
|
|
|
|
@@ -268,4 +190,42 @@ public class PayOrderServiceImpl implements PayOrderService {
|
|
|
PayOrder payOrder= payOrderMapper.selectByPrimaryKey(orderId);
|
|
|
return payOrder;
|
|
|
}
|
|
|
+
|
|
|
+ /*
|
|
|
+ * 根据订单号查询订单信息和用户信息 注:此方法在随行付回调校验之后修改状态完成后
|
|
|
+ * @param payOrder
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public Map<String, Object> getOrderInfoAndUserInfoByOrderNo(PayOrder payOrder) {
|
|
|
+ return payOrderMapper.getOrderInfoAndUserInfoByOrderNo(payOrder);
|
|
|
+ }
|
|
|
+
|
|
|
+ /*
|
|
|
+ * 判断客户表是否已存在
|
|
|
+ * @param customerManage
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public CustomerManage isExistCustomer(CustomerManage customerManage) {
|
|
|
+ return payOrderMapper.isExistCustomer(customerManage);
|
|
|
+ }
|
|
|
+
|
|
|
+ /*
|
|
|
+ * 更新客户表 注:限用于随行付支付完成处
|
|
|
+ * @param customerManage
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public void updateCustomer(CustomerManage customerManage) {
|
|
|
+ payOrderMapper.updateCustomer(customerManage);
|
|
|
+ }
|
|
|
+
|
|
|
+ /*
|
|
|
+ * 新增客户 注:限用于随行付支付完成处
|
|
|
+ * @param customerManage
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public void insertCustomer(CustomerManage customerManage) {
|
|
|
+ payOrderMapper.insertCustomer(customerManage);
|
|
|
+ }
|
|
|
}
|