订单信息
This commit is contained in:
parent
19fc2fdb2b
commit
31c8f79bc9
@ -4,6 +4,10 @@ import com.fuint.api.fuyou.service.FyPayService;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.util.Enumeration;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@ -37,6 +41,26 @@ public class FyPayController {
|
|||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 接收支付平台异步通知的接口
|
||||||
|
@PostMapping("/notify")
|
||||||
|
public String notifyUrl(@RequestBody HttpServletRequest request,@RequestBody HttpServletResponse response) {
|
||||||
|
System.out.println(request+"111");
|
||||||
|
System.out.println(response+"222");
|
||||||
|
// Map paramMap = new HashMap<>();
|
||||||
|
// Enumeration parameterNames = request.getParameterNames();
|
||||||
|
// while(parameterNames.hasMoreElements()) {
|
||||||
|
// String parameterName = (String) parameterNames.nextElement();
|
||||||
|
// paramMap.put(parameterName, request.getParameter(parameterName));
|
||||||
|
// }
|
||||||
|
// boolean isSuccess = processNotify(paramMap); // 处理支付结果并返回成功或失败状态
|
||||||
|
// if(isSuccess) {
|
||||||
|
// return "success"; // 返回成功状态,通知支付平台异步通知已成功接收
|
||||||
|
// } else {
|
||||||
|
// return "fail"; // 返回失败状态,通知支付平台异步通知已失败
|
||||||
|
// }
|
||||||
|
return "11111111";
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 退款 成功 result_msg 显示success
|
* 退款 成功 result_msg 显示success
|
||||||
* result_code显示000000
|
* result_code显示000000
|
||||||
|
@ -38,7 +38,7 @@ public class Builder {
|
|||||||
Calendar calendar = Calendar.getInstance();
|
Calendar calendar = Calendar.getInstance();
|
||||||
// sdf_no.format(calendar.getTime()) + (int) (random.nextDouble() * 100000)
|
// sdf_no.format(calendar.getTime()) + (int) (random.nextDouble() * 100000)
|
||||||
map.put("mchnt_order_no", "");
|
map.put("mchnt_order_no", "");
|
||||||
map.put("curr_type", "");
|
map.put("curr_type", "CNY");
|
||||||
map.put("order_amt", "1");
|
map.put("order_amt", "1");
|
||||||
map.put("term_ip", Const.term_ip);
|
map.put("term_ip", Const.term_ip);
|
||||||
SimpleDateFormat sdf_ts = new SimpleDateFormat("yyyyMMddHHmmss");
|
SimpleDateFormat sdf_ts = new SimpleDateFormat("yyyyMMddHHmmss");
|
||||||
@ -71,6 +71,49 @@ public class Builder {
|
|||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小程序
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static Map<String, String> buildFuiou23() {
|
||||||
|
Map<String, String> map = new HashMap<>();
|
||||||
|
|
||||||
|
map.put("version", Const.version);
|
||||||
|
map.put("ins_cd", Const.ins_cd);
|
||||||
|
map.put("mchnt_cd", Const.mchnt_cd);
|
||||||
|
map.put("term_id", Const.term_id);
|
||||||
|
map.put("random_str", randomNumberGenerator.nextBytes().toHex());
|
||||||
|
map.put("sign", "");
|
||||||
|
map.put("goods_des", Const.goods_des);
|
||||||
|
map.put("goods_detail", "");
|
||||||
|
map.put("goods_tag", "");
|
||||||
|
map.put("product_id", "");
|
||||||
|
map.put("addn_inf", "");
|
||||||
|
map.put("mchnt_order_no", "");
|
||||||
|
map.put("curr_type", "CNY");
|
||||||
|
map.put("openid", "");
|
||||||
|
map.put("order_amt", "1");
|
||||||
|
map.put("term_ip", Const.term_ip);
|
||||||
|
Calendar calendar = Calendar.getInstance();
|
||||||
|
SimpleDateFormat sdf_ts = new SimpleDateFormat("yyyyMMddHHmmss");
|
||||||
|
map.put("txn_begin_ts",sdf_ts.format(calendar.getTime()));
|
||||||
|
map.put("notify_url", Const.notify_url);
|
||||||
|
map.put("limit_pay", "");
|
||||||
|
map.put("trade_type", Const.trade_type);
|
||||||
|
map.put("sub_openid", "");
|
||||||
|
map.put("sub_appid", Const.sub_appid);
|
||||||
|
map.put("reserved_expire_minute", "1");
|
||||||
|
map.put("reserved_fy_term_id", "");
|
||||||
|
map.put("reserved_fy_term_type", "");
|
||||||
|
map.put("reserved_txn_bonus", "");
|
||||||
|
map.put("reserved_fy_term_sn", "");
|
||||||
|
map.put("reserved_device_info", "");
|
||||||
|
|
||||||
|
return map;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 退款
|
* 退款
|
||||||
*
|
*
|
||||||
|
@ -35,18 +35,23 @@ public class Const {
|
|||||||
public static String auth_code = "";
|
public static String auth_code = "";
|
||||||
// 交易关闭时间
|
// 交易关闭时间
|
||||||
public static Integer reserved_expire_minute = 1;
|
public static Integer reserved_expire_minute = 1;
|
||||||
|
// 小程序appid
|
||||||
|
public static String sub_appid = "wxba517a9bac38fe92";
|
||||||
|
// 订单类型 小程序等
|
||||||
|
public static String trade_type = "LETPAY";
|
||||||
|
|
||||||
//机构公钥
|
//机构公钥
|
||||||
public static String INS_PUBLIC_KEY="";
|
public static String INS_PUBLIC_KEY="";
|
||||||
|
|
||||||
//异步通知(回调地址)
|
//异步通知(回调地址)
|
||||||
|
// public static String notify_url = "https://www.fuint.cn/fuint-application/clientApi/pay/aliPayCallback";
|
||||||
public static String notify_url = "http://www.wrx.cn";
|
public static String notify_url = "http://www.wrx.cn";
|
||||||
|
|
||||||
//下单
|
//下单
|
||||||
public static String fuiou_21_url = "https://fundwx.fuiou.com/preCreate";
|
public static String fuiou_21_url = "https://fundwx.fuiou.com/preCreate";
|
||||||
//扫码
|
//扫码
|
||||||
public static String fuiou_22_url = "https://fundwx.fuiou.com/micropay";
|
public static String fuiou_22_url = "https://fundwx.fuiou.com/micropay";
|
||||||
//公众号/服务窗统一下单
|
//公众号/服务窗/小程序统一下单
|
||||||
public static String fuiou_23_url = "https://fundwx.fuiou.com/wxPreCreate";
|
public static String fuiou_23_url = "https://fundwx.fuiou.com/wxPreCreate";
|
||||||
//退款
|
//退款
|
||||||
public static String fuiou_24_url = "https://fundwx.fuiou.com/commonRefund";
|
public static String fuiou_24_url = "https://fundwx.fuiou.com/commonRefund";
|
||||||
|
@ -17,6 +17,13 @@ public interface FyPayService {
|
|||||||
*/
|
*/
|
||||||
public Map<String, String> queryOrder(Map<String, String> map) throws Exception;
|
public Map<String, String> queryOrder(Map<String, String> map) throws Exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小程序
|
||||||
|
* @return
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
public Map<String, String> applet(Map<String, String> map) throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 退款
|
* 退款
|
||||||
* @return
|
* @return
|
||||||
|
@ -11,6 +11,7 @@ import com.fuint.api.fuyou.entity.MerchantConfig;
|
|||||||
import com.fuint.api.fuyou.entity.Message;
|
import com.fuint.api.fuyou.entity.Message;
|
||||||
import com.fuint.api.fuyou.service.FyPayService;
|
import com.fuint.api.fuyou.service.FyPayService;
|
||||||
import com.fuint.api.fuyou.service.MerchantConfigService;
|
import com.fuint.api.fuyou.service.MerchantConfigService;
|
||||||
|
import com.fuint.api.fuyou.util.HttpUtils;
|
||||||
import com.fuint.api.fuyou.util.Utils;
|
import com.fuint.api.fuyou.util.Utils;
|
||||||
import com.fuint.business.integral.service.IntegralOrdersService;
|
import com.fuint.business.integral.service.IntegralOrdersService;
|
||||||
import com.fuint.business.marketingActivity.cardFavorable.entity.CardFavorableRecord;
|
import com.fuint.business.marketingActivity.cardFavorable.entity.CardFavorableRecord;
|
||||||
@ -19,14 +20,16 @@ import com.fuint.business.marketingActivity.cardFule.service.CardFuelRecordServi
|
|||||||
import com.fuint.business.marketingActivity.cardValue.service.CardValueRecordService;
|
import com.fuint.business.marketingActivity.cardValue.service.CardValueRecordService;
|
||||||
import com.fuint.business.order.entity.*;
|
import com.fuint.business.order.entity.*;
|
||||||
import com.fuint.business.order.service.*;
|
import com.fuint.business.order.service.*;
|
||||||
import com.fuint.common.dto.AccountInfo;
|
|
||||||
import com.fuint.common.util.TokenUtil;
|
|
||||||
import io.swagger.models.auth.In;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.dom4j.Document;
|
||||||
|
import org.dom4j.DocumentHelper;
|
||||||
|
import org.dom4j.Element;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import java.net.URLDecoder;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.net.URLEncoder;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@ -297,6 +300,45 @@ public class FyPayServiceImpl implements FyPayService {
|
|||||||
return resMap;
|
return resMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, String> applet(Map<String, String> map1) throws Exception {
|
||||||
|
String publicKey = map1.get("publicKey");
|
||||||
|
String privateKey = map1.get("privateKey");
|
||||||
|
Const.INS_PUBLIC_KEY = publicKey;
|
||||||
|
Const.INS_PRIVATE_KEY = privateKey;
|
||||||
|
String orderNo = map1.get("orderNo");
|
||||||
|
String payType = "WECHAT";
|
||||||
|
String allAmount = map1.get("allAmount");
|
||||||
|
String insCd = map1.get("insCd");
|
||||||
|
String mchntCd = map1.get("mchntCd");
|
||||||
|
String goodsDes = map1.get("goodsDes");
|
||||||
|
Map<String, String> map = Builder.buildFuiou23();
|
||||||
|
map.put("mchnt_order_no",orderNo);
|
||||||
|
map.put("order_type",payType);
|
||||||
|
map.put("order_amt", allAmount);
|
||||||
|
map.put("ins_cd", insCd);
|
||||||
|
map.put("mchnt_cd", mchntCd);
|
||||||
|
map.put("goods_des", goodsDes);
|
||||||
|
map.put("openid", map1.get("openId"));
|
||||||
|
|
||||||
|
// 请求报文
|
||||||
|
String reqBody = Message.requestMsg(map);
|
||||||
|
// 响应报文
|
||||||
|
String rspXml = Message.responseMsg(reqBody,Const.fuiou_23_url);
|
||||||
|
System.out.println("1+"+reqBody);
|
||||||
|
System.out.println("2+"+rspXml);
|
||||||
|
//响应报文验签
|
||||||
|
Map<String, String> resMap = Utils.xmlStr2Map(rspXml);
|
||||||
|
|
||||||
|
String str = resMap.get("sign");
|
||||||
|
if (Utils.verifySign(resMap, str)){
|
||||||
|
|
||||||
|
}
|
||||||
|
System.out.println(resMap);
|
||||||
|
|
||||||
|
return resMap;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, String> refund(Map<String, String> map1) throws Exception {
|
public Map<String, String> refund(Map<String, String> map1) throws Exception {
|
||||||
String orderNo = map1.get("orderNo");
|
String orderNo = map1.get("orderNo");
|
||||||
|
@ -0,0 +1,79 @@
|
|||||||
|
package com.fuint.api.fuyou.util;
|
||||||
|
|
||||||
|
import com.fuint.api.fuyou.entity.Const;
|
||||||
|
import org.apache.http.HttpEntity;
|
||||||
|
import org.apache.http.NameValuePair;
|
||||||
|
import org.apache.http.client.ClientProtocolException;
|
||||||
|
import org.apache.http.client.entity.UrlEncodedFormEntity;
|
||||||
|
import org.apache.http.client.methods.CloseableHttpResponse;
|
||||||
|
import org.apache.http.client.methods.HttpPost;
|
||||||
|
import org.apache.http.impl.client.CloseableHttpClient;
|
||||||
|
import org.apache.http.impl.client.HttpClients;
|
||||||
|
import org.apache.http.message.BasicNameValuePair;
|
||||||
|
import org.apache.http.util.EntityUtils;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
public class HttpUtils {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送 post请求访问本地应用并根据传递参数不同返回不同结果
|
||||||
|
*/
|
||||||
|
public void post(String url, Map<String, String> map, StringBuffer result) {
|
||||||
|
// 创建默认的httpClient实例.
|
||||||
|
CloseableHttpClient httpclient = HttpClients.createDefault();
|
||||||
|
// 创建httppost
|
||||||
|
HttpPost httppost = new HttpPost(url);
|
||||||
|
// 创建参数队列
|
||||||
|
List<NameValuePair> formparams = new ArrayList<>();
|
||||||
|
|
||||||
|
Iterator it=map.keySet().iterator();
|
||||||
|
while(it.hasNext()){
|
||||||
|
String key;
|
||||||
|
String value;
|
||||||
|
key=it.next().toString();
|
||||||
|
value=map.get(key);
|
||||||
|
|
||||||
|
formparams.add(new BasicNameValuePair(key, value));
|
||||||
|
}
|
||||||
|
|
||||||
|
UrlEncodedFormEntity uefEntity;
|
||||||
|
try {
|
||||||
|
uefEntity = new UrlEncodedFormEntity(formparams, Const.charset);
|
||||||
|
httppost.setEntity(uefEntity);
|
||||||
|
|
||||||
|
System.out.println("提交请求 " + httppost.getURI());
|
||||||
|
CloseableHttpResponse response = httpclient.execute(httppost);
|
||||||
|
try {
|
||||||
|
HttpEntity entity = response.getEntity();
|
||||||
|
|
||||||
|
if (entity != null && result != null) {
|
||||||
|
result.append(EntityUtils.toString(entity, Const.charset));
|
||||||
|
}
|
||||||
|
|
||||||
|
// 打印响应状态
|
||||||
|
System.out.println(response.getStatusLine());
|
||||||
|
} finally {
|
||||||
|
response.close();
|
||||||
|
}
|
||||||
|
} catch (ClientProtocolException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} catch (UnsupportedEncodingException e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} finally {
|
||||||
|
// 关闭连接,释放资源
|
||||||
|
try {
|
||||||
|
httpclient.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,48 @@
|
|||||||
|
package com.fuint.api.rocketMQ.test;
|
||||||
|
|
||||||
|
import org.apache.rocketmq.client.producer.DefaultMQProducer;
|
||||||
|
import org.apache.rocketmq.client.producer.SendResult;
|
||||||
|
import org.apache.rocketmq.client.producer.SendStatus;
|
||||||
|
import org.apache.rocketmq.common.message.Message;
|
||||||
|
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送同步消息
|
||||||
|
*/
|
||||||
|
public class SyncProducer {
|
||||||
|
|
||||||
|
public static void main(String[] args) throws Exception {
|
||||||
|
//1.创建消息生产者producer,并制定生产者组名
|
||||||
|
DefaultMQProducer producer = new DefaultMQProducer("group1");
|
||||||
|
//2.指定Nameserver地址
|
||||||
|
producer.setNamesrvAddr("39.104.58.101:9876");
|
||||||
|
//3.启动producer
|
||||||
|
producer.start();
|
||||||
|
|
||||||
|
for (int i = 0; i < 10; i++) {
|
||||||
|
//4.创建消息对象,指定主题Topic、Tag和消息体
|
||||||
|
/**
|
||||||
|
* 参数一:消息主题Topic
|
||||||
|
* 参数二:消息Tag
|
||||||
|
* 参数三:消息内容
|
||||||
|
*/
|
||||||
|
Message msg = new Message("springboot-mq", "Tag1", ("Hello World" + i).getBytes());
|
||||||
|
//5.发送消息
|
||||||
|
SendResult result = producer.send(msg);
|
||||||
|
//发送状态
|
||||||
|
SendStatus status = result.getSendStatus();
|
||||||
|
|
||||||
|
System.out.println("发送结果:" + result);
|
||||||
|
|
||||||
|
//线程睡1秒
|
||||||
|
TimeUnit.SECONDS.sleep(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
//6.关闭生产者producer
|
||||||
|
producer.shutdown();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -74,6 +74,17 @@ public class OilOrderController extends BaseController {
|
|||||||
return getSuccessResult(order);
|
return getSuccessResult(order);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小程序支付接口
|
||||||
|
* @param map
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@PostMapping("/appletPay")
|
||||||
|
public ResponseObject appletPay(@Validated @RequestBody Map<String,String> map){
|
||||||
|
orderService.appletPay(map);
|
||||||
|
return getSuccessResult("success");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据订单号查询订单信息
|
* 根据订单号查询订单信息
|
||||||
* @param map
|
* @param map
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.fuint.business.order.entity;
|
package com.fuint.business.order.entity;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import com.fuint.framework.entity.BaseEntity;
|
import com.fuint.framework.entity.BaseEntity;
|
||||||
@ -117,6 +118,10 @@ public class OilOrder extends BaseEntity implements Serializable {
|
|||||||
* 订单备注
|
* 订单备注
|
||||||
*/
|
*/
|
||||||
private String remark;
|
private String remark;
|
||||||
|
/**
|
||||||
|
* 油罐id
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Integer tankId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,6 +72,12 @@ public interface OilOrderService extends IService<OilOrder> {
|
|||||||
*/
|
*/
|
||||||
public String addOilOrder(OilOrder oilOrder);
|
public String addOilOrder(OilOrder oilOrder);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小程序订单支付
|
||||||
|
* @param map
|
||||||
|
*/
|
||||||
|
public void appletPay(Map<String,String> map);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 添加油品跟踪信息
|
* 添加油品跟踪信息
|
||||||
* @param oilOrder
|
* @param oilOrder
|
||||||
@ -79,6 +85,13 @@ public interface OilOrderService extends IService<OilOrder> {
|
|||||||
*/
|
*/
|
||||||
public void addOilTrack(JSONObject oilOrder, Integer storeId);
|
public void addOilTrack(JSONObject oilOrder, Integer storeId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 添加油品跟踪信息
|
||||||
|
* @param oilOrder
|
||||||
|
* @param storeId
|
||||||
|
*/
|
||||||
|
public void addOilTracks(OilOrder oilOrder,Integer storeId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 添加油品订单信息
|
* 添加油品订单信息
|
||||||
* @param order
|
* @param order
|
||||||
|
@ -18,11 +18,15 @@ import com.fuint.business.order.mapper.OilOrderMapper;
|
|||||||
import com.fuint.business.order.service.*;
|
import com.fuint.business.order.service.*;
|
||||||
import com.fuint.business.order.vo.OilOrderVo;
|
import com.fuint.business.order.vo.OilOrderVo;
|
||||||
import com.fuint.business.petrolStationManagement.entity.OilName;
|
import com.fuint.business.petrolStationManagement.entity.OilName;
|
||||||
|
import com.fuint.business.petrolStationManagement.entity.OilNumber;
|
||||||
import com.fuint.business.petrolStationManagement.entity.OilTank;
|
import com.fuint.business.petrolStationManagement.entity.OilTank;
|
||||||
import com.fuint.business.petrolStationManagement.entity.OilTracking;
|
import com.fuint.business.petrolStationManagement.entity.OilTracking;
|
||||||
import com.fuint.business.petrolStationManagement.service.OilNameService;
|
import com.fuint.business.petrolStationManagement.service.OilNameService;
|
||||||
|
import com.fuint.business.petrolStationManagement.service.OilNumberService;
|
||||||
import com.fuint.business.petrolStationManagement.service.OilTankService;
|
import com.fuint.business.petrolStationManagement.service.OilTankService;
|
||||||
import com.fuint.business.petrolStationManagement.service.OilTrackingService;
|
import com.fuint.business.petrolStationManagement.service.OilTrackingService;
|
||||||
|
import com.fuint.business.storeInformation.entity.LJStore;
|
||||||
|
import com.fuint.business.storeInformation.service.ILJStoreService;
|
||||||
import com.fuint.business.userManager.entity.LJUser;
|
import com.fuint.business.userManager.entity.LJUser;
|
||||||
import com.fuint.business.userManager.entity.LJUserGrade;
|
import com.fuint.business.userManager.entity.LJUserGrade;
|
||||||
import com.fuint.business.userManager.entity.UserBalance;
|
import com.fuint.business.userManager.entity.UserBalance;
|
||||||
@ -146,7 +150,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
|
|||||||
// 会员id
|
// 会员id
|
||||||
userId = Integer.valueOf(map.get("userId"));
|
userId = Integer.valueOf(map.get("userId"));
|
||||||
|
|
||||||
this.insertCardBalance(consumeAmount,userId);
|
this.insertCardBalance(consumeAmount,userId,storeId);
|
||||||
}
|
}
|
||||||
// 优惠券id
|
// 优惠券id
|
||||||
Integer couponId = null;
|
Integer couponId = null;
|
||||||
@ -271,7 +275,7 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (userId!=null){
|
if (userId!=null){
|
||||||
this.updateGrowthValue(oilActualPay, userId, Integer.valueOf(jsonObjects.get(i).get("oilName").toString()),refuelMoney);
|
this.updateGrowthValue(oilActualPay, userId, Integer.valueOf(jsonObjects.get(i).get("oilName").toString()),refuelMoney,storeId);
|
||||||
}
|
}
|
||||||
order.setStoreId(storeId);
|
order.setStoreId(storeId);
|
||||||
order.setUserId(userId);
|
order.setUserId(userId);
|
||||||
@ -378,6 +382,64 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
|
|||||||
return orderNo;
|
return orderNo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void appletPay(Map<String, String> map) {
|
||||||
|
String orderNo = map.get("orderNo");
|
||||||
|
// 支付金额
|
||||||
|
Integer payAmount = (int) (Double.valueOf(map.get("payAmount"))*100);
|
||||||
|
// 优惠金额
|
||||||
|
String discountAmount = map.get("discountAmount");
|
||||||
|
// 囤油卡消费后的信息
|
||||||
|
String oilCardAmount = map.get("oilCardAmount");
|
||||||
|
// 储值卡消费金额
|
||||||
|
String balanceAmount = map.get("balanceAmount");
|
||||||
|
Integer tankId = Integer.valueOf(map.get("tankId"));
|
||||||
|
|
||||||
|
// 根据订单号查询订单信息
|
||||||
|
OilOrder oilOrder = this.selectOilOrderByOrderNo(orderNo);
|
||||||
|
oilOrder.setTankId(tankId);
|
||||||
|
if (!map.get("payAmount").equals("0")) {
|
||||||
|
// 调用支付接口
|
||||||
|
// 判断是否开启支付规则
|
||||||
|
List<MerchantConfig> list = merchantConfigService.selectMeChByIsOpen();
|
||||||
|
if (list.size() > 0) {
|
||||||
|
oilConfigService.oilRule();
|
||||||
|
}
|
||||||
|
// 根据店铺id查询商户配置信息
|
||||||
|
MerchantConfig merchantConfig = merchantConfigService.selectMeChByIsUse("1");
|
||||||
|
LJUserVo userVo = userService.selectUserById(oilOrder.getUserId());
|
||||||
|
// 处理支付需要的数据
|
||||||
|
Map<String, String> map1 = new HashMap<>();
|
||||||
|
map1.put("allAmount", payAmount.toString());
|
||||||
|
map1.put("orderNo", oilOrder.getOrderNo());
|
||||||
|
map1.put("insCd", merchantConfig.getInsCd());
|
||||||
|
map1.put("mchntCd", merchantConfig.getMchntCd());
|
||||||
|
map1.put("goodsDes", oilOrder.getOils() + oilOrder.getOilGunNum());
|
||||||
|
map1.put("publicKey", merchantConfig.getPublicKey());
|
||||||
|
map1.put("privateKey", merchantConfig.getPrivateKey());
|
||||||
|
map1.put("discountAmount", discountAmount);
|
||||||
|
map1.put("oilCardAmount", oilCardAmount);
|
||||||
|
map1.put("balanceAmount", balanceAmount);
|
||||||
|
map1.put("openId", userVo.getOpenId());
|
||||||
|
|
||||||
|
// 调用支付接口
|
||||||
|
try {
|
||||||
|
fyPayService.applet(map1);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
this.updateGrowthValue(Double.valueOf(payAmount),oilOrder.getUserId(), Integer.valueOf(oilOrder.getOils()),oilCardAmount,oilOrder.getStoreId());
|
||||||
|
this.addOilTracks(oilOrder,oilOrder.getStoreId());
|
||||||
|
this.insertCardBalance(Double.valueOf(balanceAmount),oilOrder.getUserId(),oilOrder.getStoreId());
|
||||||
|
oilOrder.setPayAmount(Double.valueOf(payAmount));
|
||||||
|
oilOrder.setDiscountAmount(Double.valueOf(discountAmount));
|
||||||
|
oilOrder.setPayTime(new Date());
|
||||||
|
oilOrder.setOrderStatus("paid");
|
||||||
|
baseMapper.updateById(oilOrder);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private OilTankService oilTankService;
|
private OilTankService oilTankService;
|
||||||
@Autowired
|
@Autowired
|
||||||
@ -411,6 +473,32 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
|
|||||||
oilTankService.update(oilTank);
|
oilTankService.update(oilTank);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 添加油品库存跟踪信息
|
||||||
|
* @param oilOrder
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void addOilTracks(OilOrder oilOrder,Integer storeId){
|
||||||
|
OilTank oilTank = oilTankService.queryById(oilOrder.getTankId());
|
||||||
|
// 添加库存跟踪信息
|
||||||
|
OilTracking oilTracking = new OilTracking();
|
||||||
|
oilTracking.setDocument("油品出售");
|
||||||
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
|
||||||
|
String timestamp = dateFormat.format(new Date());
|
||||||
|
String randomString = UUID.randomUUID().toString().replace("-","").substring(0,6);
|
||||||
|
oilTracking.setOrderNumber(timestamp+randomString);
|
||||||
|
|
||||||
|
oilTracking.setQuantityChange(-oilOrder.getOilNum());
|
||||||
|
oilTracking.setStoreId(storeId);
|
||||||
|
oilTracking.setTankId(oilOrder.getTankId());
|
||||||
|
oilTrackingService.insert(oilTracking);
|
||||||
|
|
||||||
|
// 修改油罐容量
|
||||||
|
Double storedQuantity = oilTank.getStoredQuantity();
|
||||||
|
oilTank.setStoredQuantity(storedQuantity-oilOrder.getOilNum());
|
||||||
|
oilTankService.update(oilTank);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int updateOilOrder(OilOrder order) {
|
public int updateOilOrder(OilOrder order) {
|
||||||
int row = baseMapper.updateById(order);
|
int row = baseMapper.updateById(order);
|
||||||
@ -423,19 +511,21 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
|
|||||||
private LJUserService userService;
|
private LJUserService userService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private LJUserGradeService userGradeService;
|
private LJUserGradeService userGradeService;
|
||||||
|
@Autowired
|
||||||
|
private ILJStoreService storeService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改用户成长值信息
|
* 修改用户成长值信息
|
||||||
*/
|
*/
|
||||||
private void updateGrowthValue(Double oilActualPay,Integer userid,Integer oilId,String refuelMoney){
|
private void updateGrowthValue(Double oilActualPay,Integer userid,Integer oilId,String refuelMoney,Integer storeId){
|
||||||
if (oilId!=null){
|
if (oilId!=null){
|
||||||
OilName oilName = oilNameService.selectOilNameById(oilId);
|
OilName oilName = oilNameService.selectOilNameById(oilId);
|
||||||
// 获取成长值增长数值
|
// 获取成长值增长数值
|
||||||
Integer gasGrowthValue = null;
|
Integer gasGrowthValue = null;
|
||||||
Integer dieselGrowthValue = null;
|
Integer dieselGrowthValue = null;
|
||||||
Integer naturalGrowthValue = null;
|
Integer naturalGrowthValue = null;
|
||||||
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
|
LJStore store = storeService.selectStoreByStoreId(storeId);
|
||||||
UserBalance balance = userBalanceService.selectUserBalance(userid,nowAccountInfo.getStoreId());
|
UserBalance balance = userBalanceService.selectUserBalance(userid,store.getChainStoreId());
|
||||||
int growth = balance.getGrowthValue();
|
int growth = balance.getGrowthValue();
|
||||||
balance.setRefuelMoney(refuelMoney);
|
balance.setRefuelMoney(refuelMoney);
|
||||||
// 查询会员等级列表信息
|
// 查询会员等级列表信息
|
||||||
@ -492,10 +582,11 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void insertCardBalance(Double amount,Integer userId){
|
private void insertCardBalance(Double amount,Integer userId,Integer storeId){
|
||||||
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
|
AccountInfo nowAccountInfo = TokenUtil.getNowAccountInfo();
|
||||||
// 根据用户id查询用户余额信息
|
// 根据用户id查询用户余额信息
|
||||||
UserBalance balance = userBalanceService.selectUserBalance(userId,nowAccountInfo.getStoreId());
|
LJStore store = storeService.selectStoreByStoreId(storeId);
|
||||||
|
UserBalance balance = userBalanceService.selectUserBalance(userId,store.getChainStoreId());
|
||||||
// 修改余额信息
|
// 修改余额信息
|
||||||
Double beforeBalance = balance.getCardBalance();
|
Double beforeBalance = balance.getCardBalance();
|
||||||
Double afterBalance = beforeBalance - amount;
|
Double afterBalance = beforeBalance - amount;
|
||||||
|
@ -132,7 +132,9 @@
|
|||||||
</select>
|
</select>
|
||||||
<select id="selectOilNumberNameByStoreId" resultType="com.fuint.business.petrolStationManagement.vo.OilNumberNameVo"
|
<select id="selectOilNumberNameByStoreId" resultType="com.fuint.business.petrolStationManagement.vo.OilNumberNameVo"
|
||||||
parameterType="java.lang.Integer">
|
parameterType="java.lang.Integer">
|
||||||
select onu.*,ona.oil_type,ona.oil_name oilNames from oil_number onu left join oil_name ona on onu.oil_name = ona.id
|
select onu.*,ona.oil_type,ona.oil_name oilNames,ot.id tankId from oil_tank ot
|
||||||
|
left join oil_number onu on ot.number_id = onu.number_id
|
||||||
|
left join oil_name ona on onu.oil_name = ona.id
|
||||||
<where>
|
<where>
|
||||||
onu.store_id = #{storeId} and onu.state = '启用'
|
onu.store_id = #{storeId} and onu.state = '启用'
|
||||||
</where>
|
</where>
|
||||||
|
@ -61,5 +61,13 @@ public interface OilNumberService extends IService<OilNumber> {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<OilNumberNameVo> selectOilNumberNameByStoreId(Integer storeId);
|
List<OilNumberNameVo> selectOilNumberNameByStoreId(Integer storeId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据油号和店铺id查询店铺油品信息
|
||||||
|
* @param oilName
|
||||||
|
* @param storeId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
OilNumber selectOilNumberByOilName(String oilName,Integer storeId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,6 +3,7 @@ package com.fuint.business.petrolStationManagement.service.impl;
|
|||||||
|
|
||||||
|
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
@ -98,5 +99,14 @@ public class OilNumberServiceImpl extends ServiceImpl<OilNumberMapper, OilNumber
|
|||||||
return baseMapper.selectOilNumberNameByStoreId(storeId);
|
return baseMapper.selectOilNumberNameByStoreId(storeId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public OilNumber selectOilNumberByOilName(String oilName, Integer storeId) {
|
||||||
|
QueryWrapper queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.eq("oil_name",oilName);
|
||||||
|
queryWrapper.eq("store_id",storeId);
|
||||||
|
OilNumber oilNumber = baseMapper.selectOne(queryWrapper);
|
||||||
|
return oilNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -9,4 +9,6 @@ public class OilNumberNameVo extends OilNumber {
|
|||||||
private String oilType;
|
private String oilType;
|
||||||
// 油号
|
// 油号
|
||||||
private String oilNames;
|
private String oilNames;
|
||||||
|
// 油罐id
|
||||||
|
private String tankId;
|
||||||
}
|
}
|
||||||
|
@ -2279,7 +2279,7 @@
|
|||||||
this.map.oilOrder = JSON.stringify(this.oilOrder);
|
this.map.oilOrder = JSON.stringify(this.oilOrder);
|
||||||
this.map.goodsOrder = JSON.stringify(this.goodsOrder);
|
this.map.goodsOrder = JSON.stringify(this.goodsOrder);
|
||||||
this.map.authCode = this.authCode;
|
this.map.authCode = this.authCode;
|
||||||
this.map.allAmount = (this.oilActualPay + this.goodsActualPay).toFixed(2);
|
this.map.allAmount = +this.oilActualPay + +this.goodsActualPay
|
||||||
this.map.consumeAmount = this.consumeAmount;
|
this.map.consumeAmount = this.consumeAmount;
|
||||||
this.updateRefuelMoney();
|
this.updateRefuelMoney();
|
||||||
this.map.refuelMoney = JSON.stringify(this.refuelMoney)
|
this.map.refuelMoney = JSON.stringify(this.refuelMoney)
|
||||||
|
@ -63,7 +63,7 @@
|
|||||||
"desc":"您的位置信息将用于获取离您最近的店铺信息"
|
"desc":"您的位置信息将用于获取离您最近的店铺信息"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"requiredPrivateInfos" : [ "getLocation" ]
|
"requiredPrivateInfos": ["chooseLocation", "getLocation"]
|
||||||
},
|
},
|
||||||
"mp-alipay" : {
|
"mp-alipay" : {
|
||||||
"usingComponents" : true
|
"usingComponents" : true
|
||||||
|
@ -178,7 +178,7 @@
|
|||||||
this.storeId = uni.getStorageSync("inviteStoreId")
|
this.storeId = uni.getStorageSync("inviteStoreId")
|
||||||
this.staffId = uni.getStorageSync("inviteStaffId")
|
this.staffId = uni.getStorageSync("inviteStaffId")
|
||||||
}
|
}
|
||||||
this.isExistStoreId();
|
// this.isExistStoreId();
|
||||||
|
|
||||||
this.getUserAuthority();
|
this.getUserAuthority();
|
||||||
this.getOilType();
|
this.getOilType();
|
||||||
@ -200,6 +200,8 @@
|
|||||||
// 获取定位信息
|
// 获取定位信息
|
||||||
getUserAuthority() {
|
getUserAuthority() {
|
||||||
let _this = this;
|
let _this = this;
|
||||||
|
// this.getAddress();
|
||||||
|
|
||||||
wx.getSetting({
|
wx.getSetting({
|
||||||
success(res) {
|
success(res) {
|
||||||
if (!res.authSetting['scope.userLocation']) {
|
if (!res.authSetting['scope.userLocation']) {
|
||||||
@ -232,7 +234,7 @@
|
|||||||
}).then((response) => {
|
}).then((response) => {
|
||||||
_this.store = response.data
|
_this.store = response.data
|
||||||
let welfare = response.data.welfare
|
let welfare = response.data.welfare
|
||||||
console.log(response.data)
|
uni.setStorageSync("storeId",response.data.id)
|
||||||
uni.setStorageSync("chainStoreId",response.data.chainStoreId)
|
uni.setStorageSync("chainStoreId",response.data.chainStoreId)
|
||||||
if (welfare != undefined && welfare != null && welfare != "") {
|
if (welfare != undefined && welfare != null && welfare != "") {
|
||||||
if (welfare.includes(",")) {
|
if (welfare.includes(",")) {
|
||||||
@ -279,9 +281,16 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
uni.showToast({
|
||||||
|
title:"获取位置信息成功"
|
||||||
|
})
|
||||||
},
|
},
|
||||||
fail: function(err) {
|
fail: function(err) {
|
||||||
_this.getStore(0);
|
_this.getStore(2);
|
||||||
|
uni.showToast({
|
||||||
|
title:"获取位置信息失败"
|
||||||
|
})
|
||||||
console.log('获取位置信息失败: ' + err.errMsg);
|
console.log('获取位置信息失败: ' + err.errMsg);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -248,6 +248,7 @@
|
|||||||
_this.oilPrice = res.data[0].gbPrice
|
_this.oilPrice = res.data[0].gbPrice
|
||||||
_this.oilUnit = res.data[0].unit
|
_this.oilUnit = res.data[0].unit
|
||||||
_this.oilOrder.oils = res.data[0].oilName
|
_this.oilOrder.oils = res.data[0].oilName
|
||||||
|
uni.setStorageSync("tankId",res.data[0].tankId)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@ -298,10 +299,12 @@
|
|||||||
// 选择油品信息
|
// 选择油品信息
|
||||||
getHIndex(index,data) {
|
getHIndex(index,data) {
|
||||||
this.hindex = index
|
this.hindex = index
|
||||||
|
console.log(data)
|
||||||
this.getOilGun(data.numberId)
|
this.getOilGun(data.numberId)
|
||||||
this.oilPrice = data.gbPrice
|
this.oilPrice = data.gbPrice
|
||||||
this.oilUnit = data.unit
|
this.oilUnit = data.unit
|
||||||
this.oilOrder.oils = data.oilName
|
this.oilOrder.oils = data.oilName
|
||||||
|
uni.setStorageSync("tankId",data.tankId)
|
||||||
},
|
},
|
||||||
// 选择油枪信息
|
// 选择油枪信息
|
||||||
getQIndex(index,data) {
|
getQIndex(index,data) {
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view>
|
<view>
|
||||||
<scroll-view scroll-y="true" :scroll-top="scrollTop" id="scrollList" style="height: 80vh;"
|
<scroll-view scroll-y="true" :scroll-top="scrollTop" id="scrollList" style="height: 78vh;"
|
||||||
@scrolltolower="scrolltolower">
|
@scrolltolower="scrolltolower">
|
||||||
<!-- 列表 -->
|
<!-- 列表 -->
|
||||||
<view class="box-order" v-for="(item,index) in list" :key="index">
|
<view class="box-order" v-for="(item,index) in list" :key="index">
|
||||||
|
@ -97,46 +97,107 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="desc" v-if="fullRedece >= couponRedece && exclusion == 0">
|
<view v-if="exclusion == 0">
|
||||||
<view style="display: flex;">
|
<view class="desc" v-if="fullRedece >= couponRedece && exclusion == 0">
|
||||||
<u-collapse>
|
<view style="display: flex;">
|
||||||
<u-collapse-item title="满减优惠" :open="true">
|
<u-collapse>
|
||||||
<view v-for="(item,index) in fullReduceDiscount" :key="index">
|
<u-collapse-item title="满减优惠" :open="true">
|
||||||
<span v-if="item.discount!=0">
|
<view v-for="(item,index) in fullReduceDiscount" :key="index">
|
||||||
{{item.type}}:满{{ item.full }}元,打{{ item.discount }}折
|
<span v-if="item.discount!=0">
|
||||||
</span>
|
{{item.type}}:满{{ item.full }}元,打{{ item.discount }}折
|
||||||
<span v-else>满{{ item.full }}元,减{{ item.reduce }}元</span>
|
</span>
|
||||||
</view>
|
<span v-else>满{{ item.full }}元,减{{ item.reduce }}元</span>
|
||||||
</u-collapse-item>
|
</view>
|
||||||
</u-collapse>
|
</u-collapse-item>
|
||||||
<!-- 满减优惠fullReduceDiscount -->
|
</u-collapse>
|
||||||
|
<!-- <u-dropdown ref="uDropdown">
|
||||||
|
<u-dropdown-item title="满减优惠">
|
||||||
|
<view class="slot-content">
|
||||||
|
<view class="u-text-center u-content-color u-m-t-20 u-m-b-20">其他自定义内容</view>
|
||||||
|
<u-button type="primary" @click="closeDropdown">确定</u-button>
|
||||||
|
</view>
|
||||||
|
</u-dropdown-item>
|
||||||
|
</u-dropdown> -->
|
||||||
|
<!-- 满减优惠fullReduceDiscount -->
|
||||||
|
</view>
|
||||||
|
<view style="display: flex;">
|
||||||
|
<span style="margin-right: 10px;">-¥{{fullRedece}}</span>
|
||||||
|
<u-checkbox-group>
|
||||||
|
<u-checkbox v-model="coupon"></u-checkbox>
|
||||||
|
</u-checkbox-group>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view style="display: flex;">
|
|
||||||
<span style="margin-right: 10px;">-¥{{fullRedece}}</span>
|
<view class="desc" v-else-if="fullRedece < couponRedece && exclusion == 0">
|
||||||
<u-checkbox-group>
|
<view style="display: flex;">
|
||||||
<u-checkbox v-model="coupon"></u-checkbox>
|
<u-collapse>
|
||||||
</u-checkbox-group>
|
<u-collapse-item title="优惠券" :open="true">
|
||||||
|
<view v-for="(item,index) in couponDiscount" :key="index">
|
||||||
|
满{{ item.full }}元,减{{ item.reduce }}元
|
||||||
|
</view>
|
||||||
|
</u-collapse-item>
|
||||||
|
</u-collapse>
|
||||||
|
<!-- 优惠券 couponDiscount -->
|
||||||
|
</view>
|
||||||
|
<view style="display: flex;">
|
||||||
|
<span style="margin-right: 10px;">-¥{{couponRedece}}</span>
|
||||||
|
<u-checkbox-group>
|
||||||
|
<u-checkbox v-model="coupon"></u-checkbox>
|
||||||
|
</u-checkbox-group>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
<view v-else>
|
||||||
<view class="desc" v-else>
|
<view class="desc" v-if="fullRedece >= 0">
|
||||||
<view style="display: flex;">
|
<view style="display: flex;">
|
||||||
<u-collapse>
|
<u-collapse>
|
||||||
<u-collapse-item title="优惠券" :open="true">
|
<u-collapse-item title="满减优惠" :open="true">
|
||||||
<view v-for="(item,index) in couponDiscount" :key="index">
|
<view v-for="(item,index) in fullReduceDiscount" :key="index">
|
||||||
满{{ item.full }}元,减{{ item.reduce }}元
|
<span v-if="item.discount!=0">
|
||||||
</view>
|
{{item.type}}:满{{ item.full }}元,打{{ item.discount }}折
|
||||||
</u-collapse-item>
|
</span>
|
||||||
</u-collapse>
|
<span v-else>满{{ item.full }}元,减{{ item.reduce }}元</span>
|
||||||
<!-- 优惠券 couponDiscount -->
|
</view>
|
||||||
|
</u-collapse-item>
|
||||||
|
</u-collapse>
|
||||||
|
<!-- <u-dropdown ref="uDropdown">
|
||||||
|
<u-dropdown-item title="满减优惠">
|
||||||
|
<view class="slot-content">
|
||||||
|
<view class="u-text-center u-content-color u-m-t-20 u-m-b-20">其他自定义内容</view>
|
||||||
|
<u-button type="primary" @click="closeDropdown">确定</u-button>
|
||||||
|
</view>
|
||||||
|
</u-dropdown-item>
|
||||||
|
</u-dropdown> -->
|
||||||
|
<!-- 满减优惠fullReduceDiscount -->
|
||||||
|
</view>
|
||||||
|
<view style="display: flex;">
|
||||||
|
<span style="margin-right: 10px;">-¥{{fullRedece}}</span>
|
||||||
|
<u-checkbox-group>
|
||||||
|
<u-checkbox v-model="coupon"></u-checkbox>
|
||||||
|
</u-checkbox-group>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view style="display: flex;">
|
|
||||||
<span style="margin-right: 10px;">-¥{{couponRedece}}</span>
|
<view class="desc" v-if="fullRedece >= 0">
|
||||||
<u-checkbox-group>
|
<view style="display: flex;">
|
||||||
<u-checkbox v-model="coupon"></u-checkbox>
|
<u-collapse>
|
||||||
</u-checkbox-group>
|
<u-collapse-item title="优惠券" :open="true">
|
||||||
|
<view v-for="(item,index) in couponDiscount" :key="index">
|
||||||
|
满{{ item.full }}元,减{{ item.reduce }}元
|
||||||
|
</view>
|
||||||
|
</u-collapse-item>
|
||||||
|
</u-collapse>
|
||||||
|
<!-- 优惠券 couponDiscount -->
|
||||||
|
</view>
|
||||||
|
<view style="display: flex;">
|
||||||
|
<span style="margin-right: 10px;">-¥{{couponRedece}}</span>
|
||||||
|
<u-checkbox-group>
|
||||||
|
<u-checkbox v-model="coupon"></u-checkbox>
|
||||||
|
</u-checkbox-group>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view style="background-color: white;width: 94%;margin: 15px auto;">
|
<view style="background-color: white;width: 94%;margin: 15px auto;">
|
||||||
@ -158,7 +219,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view style="color: red;font-size: 12px;">应付金额</view>
|
<view style="color: red;font-size: 12px;">应付金额</view>
|
||||||
</view>
|
</view>
|
||||||
<view
|
<view @click="payment"
|
||||||
style="margin-right: 20px;width: 30%;border-radius:30px;background-color: #1879ff;height: 40px;line-height: 40px;text-align: center;color: white">
|
style="margin-right: 20px;width: 30%;border-radius:30px;background-color: #1879ff;height: 40px;line-height: 40px;text-align: center;color: white">
|
||||||
确认支付
|
确认支付
|
||||||
</view>
|
</view>
|
||||||
@ -231,22 +292,32 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
onLoad(e) {
|
onLoad(e) {
|
||||||
this.orderNo = e.orderNo
|
// this.orderNo = e.orderNo
|
||||||
// this.orderNo = "20231201114800ebe24b"
|
this.orderNo = "20231201175248e68558"
|
||||||
},
|
},
|
||||||
onShow() {
|
onShow() {
|
||||||
this.getOilOrder();
|
this.getOilOrder();
|
||||||
this.testPay();
|
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 测试支付接口
|
// 支付接口
|
||||||
testPay(){
|
payment(){
|
||||||
|
let map = {
|
||||||
|
orderNo : "20231201175248e68558",
|
||||||
|
payAmount : "0.01",
|
||||||
|
discountAmount : '0',
|
||||||
|
oilCardAmount : "",
|
||||||
|
balanceAmount : this.balanceRedece,
|
||||||
|
// tankId : uni.getStorageSync("tankId"),
|
||||||
|
tankId : 6,
|
||||||
|
};
|
||||||
|
let _this = this;
|
||||||
request({
|
request({
|
||||||
url: "api/wechat/pay",
|
url: "business/oilOrder/appletPay",
|
||||||
method: 'post',
|
method: 'post',
|
||||||
|
data: map,
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
console.log(res)
|
console.log(res)
|
||||||
})
|
})
|
||||||
@ -748,7 +819,9 @@
|
|||||||
method: 'get',
|
method: 'get',
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
_this.user = res.data;
|
_this.user = res.data;
|
||||||
_this.refuelMoney = JSON.parse(res.data.refuelMoney)
|
if (res.data.refuelMoney!=null && res.data.refuelMoney!=""){
|
||||||
|
_this.refuelMoney = JSON.parse(res.data.refuelMoney)
|
||||||
|
}
|
||||||
_this.changeRefuelMoney()
|
_this.changeRefuelMoney()
|
||||||
_this.getGrade(res.data.gradeId)
|
_this.getGrade(res.data.gradeId)
|
||||||
_this.preferentialData.oilPrice = _this.oilPrice
|
_this.preferentialData.oilPrice = _this.oilPrice
|
||||||
|
@ -103,9 +103,6 @@ try {
|
|||||||
uniIcons: function () {
|
uniIcons: function () {
|
||||||
return Promise.all(/*! import() | node-modules/@dcloudio/uni-ui/lib/uni-icons/uni-icons */[__webpack_require__.e("common/vendor"), __webpack_require__.e("node-modules/@dcloudio/uni-ui/lib/uni-icons/uni-icons")]).then(__webpack_require__.bind(null, /*! @dcloudio/uni-ui/lib/uni-icons/uni-icons.vue */ 453))
|
return Promise.all(/*! import() | node-modules/@dcloudio/uni-ui/lib/uni-icons/uni-icons */[__webpack_require__.e("common/vendor"), __webpack_require__.e("node-modules/@dcloudio/uni-ui/lib/uni-icons/uni-icons")]).then(__webpack_require__.bind(null, /*! @dcloudio/uni-ui/lib/uni-icons/uni-icons.vue */ 453))
|
||||||
},
|
},
|
||||||
uEmpty: function () {
|
|
||||||
return Promise.all(/*! import() | uni_modules/uview-ui/components/u-empty/u-empty */[__webpack_require__.e("common/vendor"), __webpack_require__.e("uni_modules/uview-ui/components/u-empty/u-empty")]).then(__webpack_require__.bind(null, /*! @/uni_modules/uview-ui/components/u-empty/u-empty.vue */ 536))
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
if (
|
if (
|
||||||
@ -128,15 +125,6 @@ var render = function () {
|
|||||||
var _vm = this
|
var _vm = this
|
||||||
var _h = _vm.$createElement
|
var _h = _vm.$createElement
|
||||||
var _c = _vm._self._c || _h
|
var _c = _vm._self._c || _h
|
||||||
var g0 = _vm.list.length
|
|
||||||
_vm.$mp.data = Object.assign(
|
|
||||||
{},
|
|
||||||
{
|
|
||||||
$root: {
|
|
||||||
g0: g0,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
var recyclableRender = false
|
var recyclableRender = false
|
||||||
var staticRenderFns = []
|
var staticRenderFns = []
|
||||||
@ -200,12 +188,34 @@ exports.default = void 0;
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
var _default = {
|
var _default = {
|
||||||
data: function data() {
|
data: function data() {
|
||||||
return {
|
return {
|
||||||
title: '',
|
title: '',
|
||||||
tindex: 0,
|
tindex: 0,
|
||||||
list: [],
|
list: ["1"],
|
||||||
tapList: [{
|
tapList: [{
|
||||||
text: "全部"
|
text: "全部"
|
||||||
}, {
|
}, {
|
||||||
|
Loading…
Reference in New Issue
Block a user