Commit 85962ea4 by 彭祥礼

增加订单详情页查询

parent e0bcaadc
......@@ -21,7 +21,6 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.TimeUnit;
......@@ -35,8 +34,6 @@ import java.util.concurrent.TimeUnit;
@RestController
@RequestMapping("/yxtCard")
public class YxtCardController extends BaseController {
private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
private static SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
@Autowired
private YxtCouponMapper yxtCouponMapper;
......@@ -49,6 +46,8 @@ public class YxtCardController extends BaseController {
@Autowired
private YxtOrderDetailMapper yxtOrderDetailMapper;
@Autowired
private SysUserMapper sysUserMapper;
@Autowired
private RedisTemplate redisTemplate;
private final double price = 25.0;
/**
......@@ -466,7 +465,18 @@ public class YxtCardController extends BaseController {
return ResponseData.success(objectMap);
}
/**
* 获取院线通订单列表
* @return
*/
@RequestMapping("getYxtOrderList")
public ResponseData<List<YxtOrder>> getYxtOrderList(@RequestParam("userId") String userId) {
Wrapper<YxtOrder> orderWrapper = new EntityWrapper<>();
orderWrapper.eq(StringUtils.isNotBlank(userId),"user_id",userId);
List<YxtOrder> list = yxtOrderMapper.selectList(orderWrapper);
return ResponseData.success(list);
}
/**
* 获取院线通订单详情
* @return
......@@ -482,10 +492,6 @@ public class YxtCardController extends BaseController {
orderWrapper.eq("order_num",orderNum);
YxtOrder order = yxtOrderMapper.selectList(orderWrapper).get(0);
objectMap.put("order", order);
if(StringUtils.isNotBlank(order.getAddressId().toString())){
YxtAddress address = yxtAddressMapper.selectById(order.getAddressId());
objectMap.put("address", address);
}
if(order.getOrderType().equals("电子订单")){
Wrapper<YxtOrderDetail> detailWrapper = new EntityWrapper<>();
detailWrapper.eq("order_id",order.getId());
......@@ -495,10 +501,19 @@ public class YxtCardController extends BaseController {
cuponList.add(orderDetail.getYxtId());
}
Wrapper<YxtCoupon> couponWrapper = new EntityWrapper<>();
couponWrapper.eq("state",2);
couponWrapper.in("id",cuponList);
List<YxtCoupon> cardList = yxtCouponMapper.selectList(couponWrapper);
objectMap.put("cardList", cardList);
}else{
SysUser sysUser = sysUserMapper.selectById(order.getUserId());
objectMap.put("sysUser", sysUser);
if(StringUtils.isNotBlank(order.getAddressId().toString())){
YxtAddress address = yxtAddressMapper.selectById(order.getAddressId());
objectMap.put("address", address);
}
}
objectMap.put("price", price);
}catch(Exception e){
e.printStackTrace();
......@@ -554,6 +569,92 @@ public class YxtCardController extends BaseController {
}
return ResponseData.error("新增地址失败!!!");
}
// 发起支付
public ResponseData<Map<String,Object>> activePay(String orderNum,double totalPrice){
int totalPricet = (int)(totalPrice * 100);
String nonceStr = Sha1Util.getNonceStr();
// 统一下单请求参数
PayRequest payRequest = new PayRequest();
payRequest.setAppid(WxConfig.APPID);
payRequest.setMch_id(WxConfig.MAC_ID);
payRequest.setNonce_str(nonceStr);
payRequest.setSign("sign");
payRequest.setBody("yuan_xian_tong");
payRequest.setOut_trade_no(orderNum);
payRequest.setTotal_fee(Integer.toString(totalPricet));
payRequest.setSpbill_create_ip("120.24.88.216");
payRequest.setNotify_url(WxConfig.NOTIFY_URL);
payRequest.setTrade_type("JSAPI");
//临时测试用
payRequest.setOpenid("o22lhwRZP2zbXff7UHH3J8oqH8A0");
//System.out.println("pay——openid:"+request.getSession().getAttribute("openId").toString());
//log.info("pay——openid:"+openId);
//payRequest.setOpenid(openId);
// 统一下单加密参数
SortedMap<Object,Object> parameters = new TreeMap<Object,Object>();
parameters.put("appid", payRequest.getAppid());
parameters.put("mch_id", payRequest.getMch_id());
parameters.put("nonce_str", payRequest.getNonce_str());
parameters.put("body", payRequest.getBody());
parameters.put("out_trade_no", payRequest.getOut_trade_no());
parameters.put("total_fee", payRequest.getTotal_fee());
parameters.put("spbill_create_ip", payRequest.getSpbill_create_ip());
parameters.put("notify_url", payRequest.getNotify_url());
parameters.put("trade_type", payRequest.getTrade_type());
parameters.put("openid", payRequest.getOpenid());
String sign = WXPayUtil.createSign("UTF-8", parameters);
payRequest.setSign(sign);
try{
Map<String, Object> map = ConvertMapBean.bean2map(payRequest);
String xmlStr = WXPayUtil.map2Xmlstring(map);
String url = "https://api.mch.weixin.qq.com/pay/unifiedorder";
String result = HTTPSClient.sendPostXml(url, xmlStr);
System.out.println(result);
Map<String, Object> resultMap = WXPayUtil.xmlString2Map(result);
long timeStamp = System.currentTimeMillis();
nonceStr = Sha1Util.getNonceStr();
// 加密参数
String packages = "prepay_id=" + resultMap.get("prepay_id").toString();
SortedMap<Object,Object> secretParams = new TreeMap<Object,Object>();
secretParams.put("timeStamp", timeStamp);
secretParams.put("nonceStr", nonceStr);
secretParams.put("package", packages);
secretParams.put("appId", WxConfig.APPID);
secretParams.put("signType", "MD5");
String secretSign = WXPayUtil.createSign("UTF-8", secretParams);
// 获取签名
// String params = "appid=wxfc18f5186b729d15&timestamp="+timeStamp+"&noncestr="+nonceStr+"&package="+resultMap.get("prepay_id")+"&signtype=MD5";
// MessageDigest crypt = MessageDigest.getInstance("MD5");
// crypt.reset();
// crypt.update(params.getBytes("UTF-8"));
// String signature = WxInterfacesUtil.byteToHex(crypt.digest());
Map<String,Object> objectMap = new HashMap<>();
objectMap.put("appId", WxConfig.APPID);
objectMap.put("timeStamp", timeStamp);
objectMap.put("nonceStr", nonceStr);
objectMap.put("package", packages);
objectMap.put("signType", "MD5");
objectMap.put("sign", secretSign);
return ResponseData.success(objectMap,"支付成功");
}catch(Exception e){
e.printStackTrace();
}
return ResponseData.error("支付失败");
}
// 返回目前可购买兑换券数量
public int returnCardNum(){
Wrapper<YxtCoupon> couponWrapper = new EntityWrapper<>();
......
package com.winsun.bean;
import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
......@@ -55,8 +53,6 @@ public class YxtOrder implements Serializable {
*创建时间
*/
@TableField("update_date")
@JSONField(format = "yyyy-MM-dd HH:mm:ss") //FastJson包使用注解
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateDate;
/**
*是否删除(1.已删除,0.不删除)
......
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